OWASP Building Secure Web Applications And the OWASP top 10 vulnerabilities.

Slides:



Advertisements
Similar presentations
Nick Feamster CS 6262 Spring 2009
Advertisements

Webgoat.
OWASP’s Ten Most Critical Web Application Security Vulnerabilities
Infosec 2012 | 25/4/12 Application Performance Monitoring Ofer MAOR CTO Infosec 2012.
Don’t get Stung (An introduction to the OWASP Top Ten Project) Barry Dorrans Microsoft Information Security Tools NEW AND IMPROVED!
SEC835 OWASP Top Ten Project.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
Creating Stronger, Safer, Web Facing Code JPL IT Security Mary Rivera June 17, 2011.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
ATTACKING AUTHENTICATION The Web Application Hacker’s Handbook, Ch. 6 Presenter: Jie Huang 10/31/2012.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
WebGoat & WebScarab “What is computer security for $1000 Alex?”
Vulnerability Assessment Course Applications Assessment.
Web Application Security Vulnerabilities Yen-Cheng Chen Department of Information Management National Chi Nan University Puli, 545 Nantou, Taiwan
Application Security: What Does it Take to Build and Test a “Trusted” App? John Dickson, CISSP Denim Group.
It’s always better live. MSDN Events Security Best Practices Part 2 of 2 Reducing Vulnerabilities using Visual Studio 2008.
Chapter 9 Web Applications. Web Applications are public and available to the entire world. Easy access to the application means also easy access for malicious.
Security in Application & SDLC
Information Networking Security and Assurance Lab National Chung Cheng University The Ten Most Critical Web Application Security Vulnerabilities Ryan J.W.
It’s always better live. MSDN Events Securing Web Applications Part 1 of 2 Understanding Threats and Attacks.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Web Application Security An Introduction. OWASP Top Ten Exploits *Unvalidated Input Broken Access Control Broken Authentication and Session Management.
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
1 Security in Application & SDLC Barkan Asaf Nov, 2006.
Software Security Course Course Outline Course Overview Introduction to Software Security Common Attacks and Vulnerabilities Overview of Security.
The 10 Most Critical Web Application Security Vulnerabilities
Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department
Web Application Vulnerabilities Checklist. EC-Council Parameter Checklist  URL request  URL encoding  Query string  Header  Cookie  Form field 
Web Application Security
OWASP Mobile Top 10 Why They Matter and What We Can Do
Introduction to Application Penetration Testing
Web Security Overview Lohika ASC team 2009
OWASP Zed Attack Proxy Project Lead
Ladd Van Tol Senior Software Engineer Security on the Web Part One - Vulnerabilities.
Copyright © 2008, CIBER Norge AS 1 Web Application Security Nina Ingvaldsen 22 nd October 2008.
Chapter 9 Web Applications. Web Applications are public and available to the entire world. Easy access to the application means also easy access for malicious.
A Security Review Process for Existing Software Applications
CSC 2720 Building Web Applications Web Application Security.
November 13, 2008 Ohio Information Security Forum Attack Surface of Web Applications James Walden Northern Kentucky University
Copyright 2007 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Chapter 2. Core Defense Mechanisms. Fundamental security problem All user input is untrusted.
Web Application Security ECE ECE Internetwork Security What is a Web Application? An application generally comprised of a collection of scripts.
Top Five Web Application Vulnerabilities Vebjørn Moen Selmersenteret/NoWires.org Norsk Kryptoseminar Trondheim
OWASP Top Ten #1 Unvalidated Input. Agenda What is the OWASP Top 10? Where can I find it? What is Unvalidated Input? What environments are effected? How.
 Chapter 14 – Security Engineering 1 Chapter 12 Dependability and Security Specification 1.
October 3, 2008IMI Security Symposium Application Security through a Hacker’s Eyes James Walden Northern Kentucky University
nd Joint Workshop between Security Research Labs in JAPAN and KOREA Marking Scheme for Semantic- aware Web Application Security HPC.
Web Applications Testing By Jamie Rougvie Supported by.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 9 1COMP9321, 15s2, Week.
Copyright © The OWASP Foundation This work is available under the Creative Commons SA 2.5 license The OWASP Foundation OWASP Denver February 2012.
ASP.NET 2.0 Security Alex Mackman CM Group Ltd
The OWASP Foundation Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under.
Do not try any of the techniques discussed in this presentation on a system you do not own. It is illegal and you will get caught.
CFUNITED – The premier ColdFusion conference ColdFusion Application Security The Top Ten Most Critical Web Application Security Vulnerabilities.
Page 1 Ethical Hacking by Douglas Williams. Page 2 Intro Attackers can potentially use many different paths through your application to do harm to your.
SECURE DEVELOPMENT. SEI CERT TOP 10 SECURE CODING PRACTICES Validate input Use strict compiler settings and resolve warnings Architect and design for.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Web Application Vulnerabilities
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
TOPIC: Web Security (Part-4)
What is REST API ? A REST (Representational State Transfer) Server simply provides access to resources and the REST client accesses and presents the.
A Security Review Process for Existing Software Applications
Marking Scheme for Semantic-aware Web Application Security
امنیت نرم‌افزارهای وب تقديم به پيشگاه مقدس امام عصر (عج) عباس نادری
CSC 495/583 Topics of Software Security Intro to Web Security
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Presentation transcript:

OWASP Building Secure Web Applications And the OWASP top 10 vulnerabilities

Background and Material Will Bechtel, Blue Oasis - CISSP 18 years of experience in Software Development, IT and Security. Development of web based applications for Sony, American Express, Cellular One, Federal Express, Sega, US Navy, Wells Fargo. Core of presentation from Open Web Application Security Project (OWASP) –

Overview How Much Security Do You Really Need ? –how to assess the security need and perform risk assessments. Security Guidelines – A set of high level principles that all applications should adhere to. Architecture – Discussion on how Architecture considerations can ensure security where its needed. Authentication – Describes the different types of authentication possible and the common problems. Session Management – Describes the right way to manage sessions and generate session tokens.

Overview (cont) Access Control – Describes access control concepts Event Logging – Describes what to log and how to log user and system events Data Validation – Describes strategies for dealing with unexpected input and what you need to block Common Problems – Describes problems like cross site scripting and SQL Injection and offers practical advise on how to stop them cold Privacy – Discusses privacy issues that may face your application. Cryptography - How to use cryptography and describes some common mistakes.

Risk Management How much security do you need? Risks, threats and vulnerabilities Quantitative approach – utilize SLE x ARO = ALE – Most applicable to physical security or specific asset protection Qualitative approach – ranking of potential risks and their ability to do harm. Subjective. – Because data for the quantitative approach is usually hard to come by, many times a more subjective approach is needed.

Security Guidelines Validate ALL input and output Fail securely Use and reuse trusted components Defense in depth Only secure as the weakest link No security by obscurity Least privilege, separation of privilege

Architecture Design for a secure location – Don’t design in a test lab, then worry about working in a DMZ environment later. – Realize at some point least privilege will be enforced. – There is (usually) a trade-off between convenience and security. Separate, segregate and control access. OS and Network security

Authentication Determining if a user is who they say they are. Browser limitations – consider all input ‘tainted’ HTTP Basic/HTTP Digest Forms based authentication – use SSL Digital certificates Entity Authentication – Cookies

Authentication (cont) Password Based Authentication Schemes – Limits on user names (reduce guessing) – Storing username/passwords – hashing or other secure storage – Ensure password quality – Password lockout, aging and history – Automated password reset strategies – risk remains

Managing User Sessions Cookies Session Tokens Session Management Schemes Access Control and Authorization Event Logging Data Validation

Preventing common problems Cross site scripting (validate) SQL injection (validate) Direct OS commands (URL filter) Directory traversal and path disclosure (URL filter) Null bytes (string termination)

Preventing common problems (cont) Parameter manipulation – URL manipulation – Cookie manipulation – HTTP Header – Form field manipulation

URL manipulation His/her choices are recorded by pressing the submit button. The page is actually storing the entries in form field values and submitting them using a form submit command. The command sends the following HTTP request. A malicious user could construct his own account number and change the parameters as follows: 999

Form field manipulation All of the same rules apply to hidden forms fields as apply to regular form fields. Take the same application. Behind the login form may have been the HTML tag; By manipulating the hidden value to a Y, the application would have logged the user in as an Administrator.

Cookie manipulation The extent of cookie manipulation depends on what the cookie is used for but usually ranges from session tokens to arrays that make authorization decisions. (Many cookies are Base64 encoded; this is an encoding scheme and offers no cryptographic protection). Example from a real world example on a travel web site modified to protect the innocent (or stupid). Cookie: lang=en-us; ADMIN=no; y=1 ; time=10:30GMT ; The attacker can simply modify the cookie to; Cookie: lang=en-us; ADMIN=yes; y=1 ; time=12:30GMT ;

OWASP Top Ten Unvalidated Input Broken Access Control Broken Authentication and Session Management Cross Site Scripting (XSS) flaws Buffer Overflows Injection Problems Improper Error Handling Insecure Storage Denial of Service Insecure Configuration Management

Reasons behind poor web app security Lack of knowledge/education – security has not been a focus for software engineers Lack of quality assurance in general, and specifically lack of security related testing Economic – consumers have been willing to purchase poorly engineered software and have not made this a primary purchasing decision.

Web App security tools Proxy – used to intercept traffic – view/modify data. Web security training apps – – Foundstone’s Hacme Bank -.Net – OWASP Webgoat – Java