JBoss security: penetration, protection and patching. David Jorm djorm@redhat.com



Similar documents
Security Vulnerability Management. Mark J Cox

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

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

Where every interaction matters.

MANAGED SECURITY TESTING

Hacking (and securing) JBoss AS

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

Shellshock. Oz Elisyan & Maxim Zavodchik

WEB SECURITY CONCERNS THAT WEB VULNERABILITY SCANNING CAN IDENTIFY

Adobe Systems Incorporated

Attack Vector Detail Report Atlassian

The Top Web Application Attacks: Are you vulnerable?

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

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

Essential IT Security Testing

Security Vulnerabilities in Open Source Java Libraries. Patrycja Wegrzynowicz CTO, Yonita, Inc.

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

Reducing Application Vulnerabilities by Security Engineering

Web application testing

Web Application Attacks and Countermeasures: Case Studies from Financial Systems

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

2015 Vulnerability Statistics Report

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

How to achieve PCI DSS Compliance with Checkmarx Source Code Analysis

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

Insecurity breeds at home

============================================================= =============================================================

Web Application Threats and Vulnerabilities Web Server Hacking and Web Application Vulnerability

IBM Advanced Threat Protection Solution

DFW INTERNATIONAL AIRPORT STANDARD OPERATING PROCEDURE (SOP)

ETHICAL HACKING APPLICATIO WIRELESS110 00NETWORK APPLICATION MOBILE MOBILE0001

Security Research Advisory IBM inotes 9 Active Content Filtering Bypass

Introduction:... 1 Security in SDLC:... 2 Penetration Testing Methodology: Case Study... 3

Overview of the Penetration Test Implementation and Service. Peter Kanters

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

Snare System Version Release Notes

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

How To Fix A Snare Server On A Linux Server On An Ubuntu (Amd64) (Amd86) (For Ubuntu) (Orchestra) (Uniden) (Powerpoint) (Networking

Achieving PCI Compliance: How Red Hat Can Help. Akash Chandrashekar, RHCE. Red Hat Daniel Kinon, RHCE. Choice Hotels Intl.

PCI Compliance Updates

PHP in RPM distribution

Kenna Platform Security. A technical overview of the comprehensive security measures Kenna uses to protect your data

SAST, DAST and Vulnerability Assessments, = 4

05.0 Application Development

Intrusion detection for web applications

McAfee. Firewall Enterprise. Application Note TrustedSource in McAfee. Firewall Enterprise. version and earlier

Web-Application Security

OnCommand Performance Manager 1.1

Exploiting Foscam IP Cameras.

APPLICATION SECURITY RESPONSE: WHEN HACKERS COME A-KNOCKING

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

Pre-authentication XXE vulnerability in the Services Drupal module

Web Application Security

KASPERSKY SECURITY INTELLIGENCE SERVICES. EXPERT SERVICES.

OWASP Top Ten Tools and Tactics

External Vulnerability Assessment. -Technical Summary- ABC ORGANIZATION

OWASP TOP 10 ILIA

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

Rational AppScan & Ounce Products

Penetration Test Report

Magento Security and Vulnerabilities. Roman Stepanov

Secure in 2010? Broken in 2011!

Hack Proof Your Webapps

CS 558 Internet Systems and Technologies

MWR InfoSecurity Security Advisory. pfsense DHCP Script Injection Vulnerability. 25 th July Contents

Penetration Testing Corporate Collaboration Portals. Giorgio Fedon, Co-Founder at Minded Security

VULNERABILITY ASSESSMENT WHITEPAPER INTRODUCTION, IMPLEMENTATION AND TECHNOLOGY DISCUSSION

What should a hacker know about WebDav? Vulnerabilities in various WebDav implementations

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

SYSTEM DEPLOYMENT & SECURITY AUDITING WITH RHN SATELLITE & NESSUS

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

Web Application Penetration Testing

Still Aren't Doing. Frank Kim

Threat Advisory: Atlassian Crowd (CVE )

Open Source Software Project Management A Case Study Red Hat Enterprise Linux. Bob Johnson, Red Hat

Penetration Testing Guidelines For the Financial Industry in Singapore. 31 July 2015

Web Application Security Assessment and Vulnerability Mitigation Tests

Web application security

Red Hat Network Satellite (On System z) 18-JUNE CAVMEN Meeting

Cloud Security Through Threat Modeling. Robert M. Zigweid Director of Services for IOActive

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

Product Documentation. Preliminary Evaluation of the OpenSSL Security Advisory (0.9.8 and 1.0.1)

TECHNICAL NOTE 08/04 IINTRODUCTION TO VULNERABILITY ASSESSMENT TOOLS

Certified Secure Web Application Security Test Checklist

Detecting and Defending Against Security Vulnerabilities for Web 2.0 Applications

PHP Magic Tricks: Type Juggling. PHP Magic Tricks: Type Juggling

Managing your Red Hat Enterprise Linux guests with RHN Satellite

Software Defined Networking Security

Finding and Preventing Cross- Site Request Forgery. Tom Gallagher Security Test Lead, Microsoft

Novell Access Manager

noway.toonux.com 09 January 2014

IT HEALTHCHECK TOP TIPS WHITEPAPER

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

Sitefinity Security and Best Practices

Secure Web Application Coding Team Introductory Meeting December 1, :00 2:00PM Bits & Pieces Room, Sansom West Room 306 Agenda

Transcription:

JBoss security: penetration, protection and patching David Jorm djorm@redhat.com

Contents The problem Background Historical vulnerabilities JBoss worm Security response for products The solution

The Problem

The problem JBoss is a major target, compromised JBoss servers are well documented We recently had a live worm that compromised thousands of servers Penetration testers focus on JBoss as a potential weak point JBoss products have coverage from SRT, JBoss projects are particularly exposed The main issues are insecure defaults and lack of patching/updating

Background

JBoss Projects A collection of open source projects Includes the Application Server (AS) and many other components Developed by the community Released without commercial support Very widely deployed

JBoss Products Productized builds based primarily on JBoss project code Sold by subscription with commercial support Includes backported security patches and coverage from the Red Hat Security Response Team (SRT) I work for SRT, responsible for all JBoss products

JMX (Java Management Extensions) Framework for managing and monitoring systems via MBeans Probe, Agent and Remote Management layers

JMX Console Web-based JMX management interface, shipped with JBoss AS Allows a user to invoke methods on MBeans via a web interface Included in JBoss AS < 7, EAP and derived products Password-based authentication by default on EAP, open by default on AS A major attack surface

Historical Vulnerabilities

CVE-2010-0738 The JMX console in products includes password authentication by default. The relevant <security-constraint> tag included: <http-method>get</http-method> <http-method>post</http-method> Authentication was not applied to other verbs e.g. HEAD The HEAD handler defaulted to the same code execution path as GET

CVE-2010-0738 Unauthenticated requests could be made using the HEAD verb, with the same backend effect as GET For JBoss AS, no authentication by default. This means the HEAD requests also work. This is critical as we will see when we come to the worm.

CVE-2010-4476 Double.parseDouble in the JRE can get into an infinite loop when converting a number to a double For example, use 2.2250738585072012e-308 Can be used to effect a DoS attack Affected Java itself, but also Tomcat/JBoss Web via HTTP headers e.g. q Fixed in Tomcat/JBoss Web by no longer using Double.parseDouble for the QoS header Separate fix in Java itself

CVE-2011-1484 / CVE-2011-2196 Seam did not properly restrict the use of Expression Language (EL) during exception handling. An attacker can cause the application to throw an exception, then provide a parameter including EL. The EL can include calls to.class. and.getclass(), which can be used to invoke arbitrary code. CVE-2011-1484 was fixed in April 11, but the patch was incomplete and this was found by a user. CVE-2011-2196 shipped a complete patch in July 11. Both issues handled under embargo no wild 0day

CVE-2011-1483 Remote DoS in jbossws-native (web services) An attacker can make a request to XML web services (e.g. SOAP) including recursive entity resolution with embedded DTDs The issue was specific to jbossws-native (JBoss), not jbossws-cxf (Apache) Enough concurrent attack requests and the server will consume all available connections and die Discovered by Red Hat and handled under embargo

CSRF Source: talks.php.net

CVE-2011-2908 Cross Site Request Forgery (CSRF) against JMX Console As shipped with JBoss AS < 7 Allows a remote attacker to trigger requests by tricking an admin into visiting a malicious URL This kind of flaw is often used by real world attackers and pen testers to perform 'spear phishing' attacks. Has not been patched at all, even on supported products. A major outstanding flaw.

CVE-2011-3609 CSRF against AS7 management console & HTTP API By using plain-text JSON calls to the HTTP API, CSRF attacks can be mounted Fixed in AS 7.1.0 Beta 1 Demonstration video...

Historical Vulnerabilities Summary There are a wide range of flaws covering a wide range of attack surfaces The vulnerabilities affect both upstream components and JBoss project code The JMX Console and Tomcat/JBoss Web are the source of many issues Many lower impact flaws have also been found and fixed: XSS, information disclosure, various DoSes etc.

Historical Vulnerabilities Summary There are a wide range of flaws covering a wide range of attack surfaces The vulnerabilities affect both upstream components and JBoss project code The JMX Console and Tomcat/JBoss Web are the source of many issues Many lower impact flaws have also been found and fixed: XSS, information disclosure, various DoSes etc.

JBoss Worm

JBoss Worm Exploits CVE-2010-0738, which was patched on supported products in April 2010 Uses HEAD verb to bypass authentication, then uses the JMX Console to call bshdeployer and deploy arbitrary code to the server Installs an IRC-based command and control component for a botnet, then runs a scanner to search random blocks of IP address space for more servers to infect Also affects unsecured JBoss AS instances

JBoss Worm According to brief google research, most of the affected systems were actually unsecured JBoss AS instances, rather than systems vulnerable to CVE2010-0738 This highlights the core problem: if someone is running the latest build of AS7, they will have fixes for all issues that we have patched. If they're running an older version, there's no backporting or async patching. People running JBoss AS 5 in production are numerous, and they're getting compromised

Security Response for Products

Security response for products

14 Embargoed vulnerabilities (50% of total, 2008-11) 12 10 8 Peer vendor Coordination centre Research firm Found by Red Hat Relationship 6 4 2 0 Embargoed JBoss Vulnerabilities

30 No notice vulnerabilities (50% of total, 2008-11) 25 20 CVE feed Individual reporter Security mailing list Other vendor Found by Red Hat 15 10 5 0 "No notice" JBoss Vulnerabilities

Triage Determine whether it affects our products Assign a severity (CVSS2) Prioritize according to severity Assign a CVE ID This is the fun part reproducing bugs, running exploits, feeling the giddy thrill of fresh 0day in your hand

File Bugs Complex bug tracking regime: Bugzilla for the whole CVE Per-product bugs for affected products. Most in Bugzilla, some in JIRA, one product now heading for EOL was even in Google Code. Task bug for monitoring SRT action

Patch Sometimes we produce the patch for our own products Especially true for JBoss products with fewer contributors and people sharing the code In this case we need to commit our patch back upstream (embargoed) Other times we backport it from upstream Backporting means cherry picking security fixes

QE Patch Confirm fix solves the security issues No regressions introduced No performance degradation We've had issues with all of the above. A huge cost if we have to clean up one of these impacts after the patch is released.

Errata Packages patch as either an RPM or zip file Bundles documentation of the issues Available via RHN or CSP Triggers alert emails

The Solution

The solution Secure defaults. This is already underway. AS7 has replaced the JMX console and applied security by default. It has also resolved persistent XSS and CSRF issues in the management console: http://community.jboss.org/wiki/as710beta1-securityenabledbydefault Security response for projects. This would be a whole new undertaking, with various dependencies.

Security response for projects Vision: people no longer need to track the latest release to get all security fixes. Older versions are supported with backported patches through a defined lifecycle This is similar to Fedora, so we can learn from that project SRT to provide inputs to this process for each flaw Optimal solution relies on bugzilla and RPM distribution

Security response for projects: Fedora model

Security response for projects: JBoss proposal

Security response for projects Proposed tasks (in sequence) 1) JBoss AS 7 gets packaged in Fedora 2) Implement standard Fedora security process, with extra initial SRT assistance 3) Define lifecycles for JBoss community releases 4) Implement JBoss project security process, start shipping updated zips with backported patches 5) Connect downstream projects, e.g. ovirt