Secure in 2010? Broken in 2011! Matias Madou, PhD Principal Security Researcher



Similar documents
Secure in 2010? Broken in 2011!

SAST, DAST and Vulnerability Assessments, = 4

Is your software secure?

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

JBoss security: penetration, protection and patching. David Jorm

Passing PCI Compliance How to Address the Application Security Mandates

From the Bottom to the Top: The Evolution of Application Monitoring

Using Nessus In Web Application Vulnerability Assessments

Black Box versus White Box: Different App Testing Strategies John B. Dickson, CISSP

Adobe Systems Incorporated

Web application testing

EC-Council CAST CENTER FOR ADVANCED SECURITY TRAINING. CAST 619 Advanced SQLi Attacks and Countermeasures. Make The Difference CAST.

Securing Your Web Application against security vulnerabilities. Ong Khai Wei, IT Specialist, Development Tools (Rational) IBM Software Group

Automating Security Testing. Mark Fallon Senior Release Manager Oracle

Application Code Development Standards

Learning objectives for today s session

WEB APPLICATION VULNERABILITY STATISTICS (2013)

Security Products Development. Leon Juranic

Application Security Testing How to find software vulnerabilities before you ship or procure code

Bringing Security Testing to Development. How to Enable Developers to Act as Security Experts

Comparing Application Security Tools

What is Web Security? Motivation

Penetration Testing. Types Black Box. Methods Automated Manual Hybrid. oless productive, more difficult White Box

Recon and Mapping Tools and Exploitation Tools in SamuraiWTF Report section Nick Robbins

The Advantages of Block-Based Protocol Analysis for Security Testing

From Rivals to BFF: WAF & VA Unite OWASP The OWASP Foundation

Client logo placeholder XXX REPORT. Page 1 of 37

Rapid Security Framework (RSF) Taxonomie, Bewertungsparameter und Marktanalyse zur Auswahl von Fuzzing-Tools

HP Fortify Application Security Lucas v. Stockhausen PreSales Manager HP Fortify EMEA Enterprise Security

Interactive Application Security Testing (IAST)

How to start a software security initiative within your organization: a maturity based and metrics driven approach OWASP

HP Fortify application security

Web Intrusion Detection with ModSecurity. Ivan Ristic

APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK

Security Testing For RESTful Applications

Evaluation of Penetration Testing Software. Research

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

ensuring security the way how we do it

HP Application Security Center

Magento Security and Vulnerabilities. Roman Stepanov

Development. Resilient Software. Secure and. Mark S. Merkow Lakshmikanth Raghavan. CRC Press. Taylor& Francis Croup. Taylor St Francis Group,

Web application security: automated scanning versus manual penetration testing.

The New PCI Requirement: Application Firewall vs. Code Review

Newsletter - September T o o l s W a t c h T e a m NJ OUCHN & MJ SOLER

Mobile Security Framework

Java Program Vulnerabilities

Detecting and Exploiting XSS with Xenotix XSS Exploit Framework

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

Conducting Web Application Pentests. From Scoping to Report For Education Purposes Only

Web Application Hacking (Penetration Testing) 5-day Hands-On Course

Product Roadmap. Sushant Rao Principal Product Manager Fortify Software, a HP company

Web Application Security

FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. Chapter 4 Finding Network Vulnerabilities

A Network Administrator s Guide to Web App Security

Network Security Testing using MMT: A case study in IDOLE project

Acunetix Website Audit. 5 November, Developer Report. Generated by Acunetix WVS Reporter (v8.0 Build )

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

DISCOVERY OF WEB-APPLICATION VULNERABILITIES USING FUZZING TECHNIQUES

Learning security through insecurity

IMPROVING VULNERABILITY MANAGEMENT EFFECTIVENESS WITH APPLICATION SECURITY MONITORING

Out of the Fire - Adding Layers of Protection When Deploying Oracle EBS to the Internet

ALERT LOGIC FOR HIPAA COMPLIANCE

State of Web Application Security. Ralph Durkee Durkee Consulting, Inc. Rochester ISSA & OWASP Chapters rd@rd1.net

Using Web Security Scanners to Detect Vulnerabilities in Web Services

Rational AppScan & Ounce Products

Secure Software Development Lifecycle. Security... Not getting better

Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance

We protect you applications! No, you don t. Digicomp Hacking Day 2013 May 16 th 2013

Threat Modelling for Web Application Deployment. Ivan Ristic (Thinking Stone)

QualysGuard WAS. Getting Started Guide Version 3.3. March 21, 2014

2015 Vulnerability Statistics Report

How to achieve PCI DSS Compliance with Checkmarx Source Code Analysis

The Web AppSec How-to: The Defenders Toolbox

Network Monitoring using MMT:

Countering The Faults Of Web Scanners Through Byte-code Injection

Web Application Security: Exercise Development Approaches

Development Processes (Lecture outline)

Sandy. The Malicious Exploit Analysis. Static Analysis and Dynamic exploit analysis. Garage4Hackers

Evaluation of Web Security Mechanisms Using Inline Scenario & Online Scenario

HackMiami Web Application Scanner 2013 PwnOff

Security Certification of Third- Parties Applications

How to hack VMware vcenter server in 60 seconds

Adobe ColdFusion. Secure Profile Web Application Penetration Test. July 31, Neohapsis 217 North Jefferson Street, Suite 200 Chicago, IL 60661

Learn Ethical Hacking, Become a Pentester

HP WebInspect Tutorial

STOPPING LAYER 7 ATTACKS with F5 ASM. Sven Müller Security Solution Architect

Transcription:

Secure in 2010? Broken in 2011! Matias Madou, PhD Principal Security Researcher

Matias Madou Principal Security Researcher, Fortify an HP Company Static Analysis Rules Insider Threat Research Runtime products: RTA and SecurityScope Hybrid 2.0: Correlation Gray-box analysis Contributor to Building Security in Maturity Model (BSIMM) Europe History in code obfuscation (and binary rewriting)

Overview Introduction The Test Application: Secure in 2010 What s new in 2011? New vulnerabilities New analysis techniques Continues Testing

Introduction History of the experiment: Gather empirical results while developing gray-box analysis. Test Application, criteria: Extensively used Undergone security improvements

The Test Application Selection criteria for the project working on: Open source, java or.net Widely used Apache 10.04

The Test Application Products and Projects based on Apache OFBiz: OpenTaps

The Test Application End Users: 1-800-Flowers Olympus.de United.com BT.com

The Test Application Security? Multiple vulnerabilities found in CVE Other (Exploit Search) and an interesting video on how to become an admin by exploiting a XSS

The Test Application

The Test Application

The Test Application

The Test Application Bug Tracking: Security Issues grouped together

The Test Application In the end: All known issues are fixed in Apache OFBiz 10.04 Secure in 2010!

So what s new in 2011? 1) New vulnerabilities: Denial-of-service: Parse Double 2) Analysis techniques: Gray box analysis

Denial-of-Service: Parse Double Problem description:

Denial-of-Service: Parse Double More concrete: Value: API: 2.2250738585072012e-308 Double.parseDouble(value) Infinite loop! http://blog.fortify.com/blog/2011/02/08/double-trouble

Denial-of-Service: Parse Double Feb 01, 2011? No, no. March 04, 2001! Why is this fixed within 1 month after the rediscover?

Denial-of-Service: Parse Double Examples: Application: Usage: Apache Tomcat Tomcat uses parsedouble() on the value of the Accept-Language HTTP header when an application calls request.getlocale() Infinite loop! http://blog.fortify.com/blog/2011/02/08/double-trouble

Denial-of-Service: Parse Double What is the problem? Root case is a Java problem, not an application problem! Everybody uses the fixed java version, right? (Version Java 6 Update 24 or later) Everybody runs a patched or latest Tomcat version, right? (Tomcat 7.0.8, 6.0.32, 5.5.33 or later)

Denial-of-Service: Parse Double Tomcat fix

Denial-of-Service: Parse Double Java fix

Denial-of-Service: Parse Double Seen in the field: adding the pattern to WAF Problems: 1. Does not protect against persistent 2. Are you sure your patterns cover everything? Pattern often used: 2.2250738585072012e-308 How about: 0.22250738585072012e-307

Denial-of-Service: Parse Double Seen in the field: adding the pattern to WAF Problems: 2. Are you sure your patterns cover everything?

Denial-of-Service: Parse Double How many issues in Apache OFBiz? Used analysis techniques: Static Analysis (White Box) Penetration Testing (Black Box)

Denial-of-Service: Parse Double Static Analysis (White Box)

Denial-of-Service: Parse Double Penetration Testing (Black Box): http://yourofbiz.com/ecommerce/control/modifycart (update_0, update_1, ) http://yourofbiz.com/ecommerce/control/additem/showcart (quantity, add_product_id) http://yourofbiz.com/ecommerce/control/additem/quickadd (quantity) http://yourofbiz.com/ecommerce/control/additem/keywordsearch (quantity) http://yourofbiz.com/ecommerce/control/additem/advancedsearch (quantity) http://yourofbiz.com/ecommerce/control/additem/showpromotiondetails (quantity) http://yourofbiz.com/ecommerce/control/additem/product (quantity,add_amount) http://yourofbiz.com/ecommerce/control/additem/lastviewedproduct (update_0) http://yourofbiz.com/ecommerce/control/additem/showforum (quantity) http://yourofbiz.com/ecommerce/control/additem/category (quantity) http://yourofbiz.com/ecommerce/control/additem/main (quantity) http://yourofbiz.com/ecommerce/control/additem (quantity) http://yourofbiz.com/ecommerce/control/additem/setdesiredalternategwpproductid ( )

Gray Box Analysis

Black-Box Testing System-level tests No assumptions about implementation Example: fuzzing Good: concrete results Bad: a losing game

White-Box Testing Examine implementation Test components in isolation Example: static analysis Good: thorough Bad: too thorough Bad: no show me exploits

Gray-Box Testing System-level tests (like black-box) Examine implementation (like white-box)

Hybrid == Gray Box Analysis Right? NO!

Hybrid Analysis Dynamic Analysis Application Monitor Static Analysis Correlation Engine Correlated Vulnerability List

Internals: Lining Up an Attack with the Code Dynamic http://www. sales.xyz.com?n= Monitor Static ID: 234 File: MyCode.cs Line: 27 ID: 234 File: MyCode.cs Line: 27 Source trace: <com.my.xxx>

Gray-box analysis: Integrated Analysis Dynamic Analysis Application Real-time link Real-Time Analysis Find More Fix Faster

Find More Detect new types of vulnerabilities Privacy violation, Log Forging Find more of all kinds of vulnerabilities Automatic attack surface identification Understand effects of attacks

Attack surface identification /login.jsp /pages/account.jsp /pages/balance.jsp /backdoor.jsp File system Configuration-driven Programmatic

Attack surface identification Point to a particular start page and scan: Crawl will find some directories

Attack surface identification Point to a particular start page and scan Crawl is no longer necessary! The Runtime Component just tells the pen tester the attack surface.

Understand effects of attacks /backdoor.jsp sysadmin$./sh Command Injection

Fix Faster Provide Actionable Details Stack trace Line of code Group Symptoms with a Common Cause

Actionable Details /login.jsp

Group Symptoms with a common cause Counting issues seems to be hard! /login.jsp /pages/account.jsp /pages/balance.jsp 1 Cross-Site Scripting Symptom 2 Cross-Site Scripting Symptoms 3 Cross-Site Scripting Symptoms 1 Cross-Site Scripting Cause

Fix Faster: Actionable details

Fix Faster: Actionable details

Fix Faster: Group symptoms

Group symptoms: details Detailed information on where to fix the issue

For the record: the proof The page Page Source

More to come: Automated anti-anti automation

Solution Which one are you talking about? Solution to fix the code Solution to keep it protected

Solution to fix the code It s still open source, so you can DIY (found in the bug databse)

Solution to fix the code Right now and no time: (vulns in these slides) Run the Java 6 Update 24 or later (no DoS: Parse Double issues) In Framework/webslinger/modules/defaults.zip: www/errors/codes/404.vtl Remove ${webslinger.payload.pathinfo} In: Remove the mapkey

Solution to keep it protected Continues testing?

Solution to keep it protected How about the application in production? Static Analysis Security WAF Design Code Test Integration /Staging Operate Gray-box Analysis Development IT / Operations Penetration Testing

Solution to keep it protected Code changes, keep scanning New vulnerabilities are discovered. Update with the latest security information No rocket science, right?

Solution to keep it protected Try out new assessment techniques Work the scans. Tune them to work in your environment