Beyond negative security Signatures are not always enough Or Katz Trustwave ot.com/

Slides:



Advertisements
Similar presentations
Webgoat.
Advertisements

Closing the Gap: Analyzing the Limitations of Web Application Vulnerability Scanners David Shelly Randy Marchany Joseph Tront Virginia Polytechnic Institute.
Detection Scenarios ReconWeaponizationDeliverExploitationInstallationC2 Act on Objectives File File - Name URI – Domain Name URI – URL HTTP - GET HTTP.
Attacking Authentication and Authorization CSE 591 – Security and Vulnerability Analysis Spring 2015 Adam Doupé Arizona State University
Automating Bespoke Attack Ruei-Jiun Chapter 13. Outline Uses of bespoke automation ◦ Enumerating identifiers ◦ Harvesting data ◦ Web application fuzzing.
Barracuda Web Application Firewall
5/1/2006Sireesha/IDS1 Intrusion Detection Systems (A preliminary study) Sireesha Dasaraju CS526 - Advanced Internet Systems UCCS.
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.
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.
07 December 2009Slide 1 of 1207 December 2009Slide 1 of 12 SQL Injection Primer By Nicole Gray, Cliff McCullough, Joe Hernandez.
Web Application Security An Introduction. OWASP Top Ten Exploits *Unvalidated Input Broken Access Control Broken Authentication and Session Management.
07 December 2009Slide 1 of 9 SQL Injection Primer By Nicole Gray, Cliff McCullough, Joe Hernandez.
A Customisable Question and Answer Database Kate Lindsay.
CROSS SITE SCRIPTING..! (XSS). Overview What is XSS? Types of XSS Real world Example Impact of XSS How to protect against XSS?
Handling Security Threats in Kentico CMS Karol Jarkovsky Sr. Solution Architect Kentico Software
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 
W3af LUCA ALEXANDRA ADELA – MISS 1. w3af  Web Application Attack and Audit Framework  Secures web applications by finding and exploiting web application.
Lucent Technologies – Proprietary Use pursuant to company instruction Learning Sequential Models for Detecting Anomalous Protocol Usage (work in progress)
Cosc 4765 Server side Web security. Web security issues From Cenzic Vulnerability report
Cross-Site Scripting Vulnerabilities Adam Doupé 11/24/2014.
+ Websites Vulnerabilities. + Content Expand of The Internet Use of the Internet Examples Importance of the Internet How to find Security Vulnerabilities.
WEB SECURITY WEEK 3 Computer Security Group University of Texas at Dallas.
SQL INJECTION COUNTERMEASURES &
CSCI 6962: Server-side Design and Programming Secure Web Programming.
Lecture 14 – Web Security SFDV3011 – Advanced Web Development 1.
Security Security is a measure of the system’s ability to protect data and information from unauthorized access while still providing access to people.
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.
Penetration Testing James Walden Northern Kentucky University.
A Security Review Process for Existing Software Applications
© All rights reserved. Zend Technologies, Inc. PHP Security Kevin Schroeder Zend Technologies.
November 13, 2008 Ohio Information Security Forum Attack Surface of Web Applications James Walden Northern Kentucky University
Lecture slides prepared for “Computer Security: Principles and Practice”, 3/e, by William Stallings and Lawrie Brown, Chapter 5 “Database and Cloud Security”.
Chapter 2. Core Defense Mechanisms. Fundamental security problem All user input is untrusted.
Analysis of SQL injection prevention using a proxy server By: David Rowe Supervisor: Barry Irwin.
Security Scanners Mark Shtern. Popular attack targets Web – Web platform – Web application Windows OS Mac OS Linux OS Smartphone.
Top Five Web Application Vulnerabilities Vebjørn Moen Selmersenteret/NoWires.org Norsk Kryptoseminar Trondheim
Hilton Giesenow Software Architect ConseQuent Software Development
© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 1 RubyJax Brent Morris/
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.
Analysis of SQL injection prevention using a filtering proxy server By: David Rowe Supervisor: Barry Irwin.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Web Security.
APPLICATION PENETRATION TESTING Author: Herbert H. Thompson Presentation by: Nancy Cohen.
October 3, 2008IMI Security Symposium Application Security through a Hacker’s Eyes James Walden Northern Kentucky University
Security Attacks CS 795. Buffer Overflow Problem Buffer overflows can be triggered by inputs that are designed to execute code, or alter the way the program.
Web Applications Testing By Jamie Rougvie Supported by.
Web Application Vulnerabilities ECE 4112 Internetwork Security, Spring 2005 Chris Kelly Chris Lewis April 28, 2005 ECE 4112 Internetwork Security, Spring.
PwC New Technologies New Risks. PricewaterhouseCoopers Technology and Security Evolution Mainframe Technology –Single host –Limited Trusted users Security.
Web2.0 Secure Development Practice Bruce Xia
Security Issues With Web Based Systems. Security Issues Web Based Systems  Security can not be considered an add-on or afterthought  Security must be.
What Is XSS ? ! Cross-site scripting (XSS) is a type of computer security vulnerability typically found in Web applications. XSS enables attackers to.
Web Applications on the battlefield Alain Abou Tass.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
ASP.NET 2.0 Security Alex Mackman CM Group Ltd
SlideSet #20: Input Validation and Cross-site Scripting Attacks (XSS) SY306 Web and Databases for Cyber Operations.
SECURE DEVELOPMENT. SEI CERT TOP 10 SECURE CODING PRACTICES Validate input Use strict compiler settings and resolve warnings Architect and design for.
Web Security (cont.) 1. Referral issues r HTTP referer (originally referrer) – HTTP header that designates calling resource  Page on which a link is.
Database and Cloud Security
Final Project: Advanced security blade
CSCE 548 Student Presentation Ryan Labrador
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
World Wide Web policy.
API Security Auditing Be Aware,Be Safe
Web Application Firewall Bypassing – an approach for pentesters
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
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Protecting Against Common Web Application Vulnerabilities
Exploring DOM-Based Cross Site Attacks
Presentation transcript:

Beyond negative security Signatures are not always enough Or Katz Trustwave ot.com/

Agenda Exploring the shortcoming of web security solutions that focus on signature-based protection. Show how more advanced methods such as “positive” security, session monitoring and application processing monitoring are crucial in protecting a web application.

Signatures are not always enough Many of today’s attacks exploit the evolution of web applications, being complex and sophisticated enough to manipulate and abuse them. Relying solely on generic signatures to detect those attacks is not enough because: Signatures can lead to false positives Signatures are subject to evasion Application can include forbidden patterns

SQL injection What about? ‘or ‘2’=’2 ‘or ‘2’>’1 ‘or ‘a’=’a ‘or/*blabla*/ ‘2’=’2 … Attack payload: or ‘1’=’1

Input validation The problem: Signature is prone to false positives (depending only on “or|and” as signature keyword will result with many false positives or Regex with bad performance impact). Signature are subject to evasion – see the SQL comments example (/* */). Possible solution: Positive security – detect behavioral anomaly.

HTTP parameter pollution Introduced in 2009 by web application security researchers Stefano di Paola and Luca Carettoni. This attack involves injection of the attack payload in multiple appearances of the same parameter, where later on they will be aggregated by the web application. Attack payload: GET /index.php?var1=SELECT field1&var1=,field2 FROM table&var1=WHERE name=‘test’ HTTP/1.0 The concatenated payload: SELECT field1,field2 FROM table WHERE name=‘test’

HTTP parameter pollution The problem: Searching for signature on each request parameter will result with mismatch. Searching for signature on all the request may result with false positives.

Enforcing parameter count Possible solutions: Perform the same parameter handling as the web application and look for the negative pattern in the aggregated data; the problem with this approach is that web applications concatenate differently, so we need to take all the possible permutations into account or predict the method used in each web application. Restricting Parameter Count - learning the allowed number of appearances with the detection of the attack pattern (Violation of number of appearance + keyword “select”).

Stored XSS Attack payload: The problem: Pattern is being obfuscated. Searching for <IMG in the request may result with false positives (applications that allow HTML upload). Detecting XSS vulnerability (not just the attack).

Output validation Possible solutions: Outbound validation – should detect HTML entities, number of appearances violation. Apply a transformation function on the attack payload, resulting in omitting the entire comment payload and searching for signatures on the sanitized payload. Note - output validation is a major subject more research is required.

Remote file inclusion Remote file inclusion attacks allow malicious users to run their own code on a vulnerable web server. Attack payload: GET /?FORMAT= ? HTTP/1.1 The problem: URL is valid input in many cases. There is no simple generic pattern for the problem.

Conditional validation Possible solution: Learn parameter type - request parameter is not of type URL. Negative security - the parameter value must include the URL pattern.

Forceful browsing Forceful browsing attacks allow the malicious user access to restricted areas of the application. This may happen when the user is accessing the restricted page directly (often as a result of a configuration error) and not by following links in the application. The problem: The problem of insufficient authorization cannot be mitigated using signatures.

Session monitoring Possible solution: File limitation – the simplest solution is limiting the files that are accessible to users, in this scenario access to a file not on the list should be denied. Session – accessing the resource requires a valid web application session identifier. Pages that require a valid session to access will check that such a session exists in the user transaction. User login – before accessing the resource, the user must login to the application. Pages that require login to the application before accessing them will check that such an action was made.

URL redirection A redirect facility is a function of the application that transfers users to different pages within or outside an application. Normal request: GET /site/redirect.php?to= HTTP/1.1 Attack payload: GET /site/redirect.php?to= r.html HTTP/1.1

URL redirection The problem: Using the negative security approach in this case is not simple and may be not effective because allowed values are known while disallowed values are endless.

Conditional validation Possible solutions: Domain – the redirection should be allowed only to trusted domains. Internal reference – the redirection should be allowed to locations within the application. Constant field – in cases where the redirection was seen in the previous transaction as a link sent by the web application (as part of the URL) and the same redirect value should appear in the current request.

Blind SQLi/DoS attack Attack payload: GET product.asp/?p=20;waitfor delay ‘0:0:50’-- HTTP/1.0 The problem: The difference between successful and unsuccessful SQL injection is not clear in many cases. single DoS attack can not be detected.

ג ' ודי לוי

Application processing monitoring Possible solutions: By monitoring the processing time of the application, we will be able to validate application processing and detect any deviation from the allowed processing time.

Q&A White paper - Beyond negative security ads/WP_Beyond-Negative-Security.pdf My blog