Put a Firewall in Your JVM Securing Java Applications!



Similar documents
White Paper. Runtime Application Self Protection Making Apps Self Protecting, Self Diagnosing and Self Testing

White Paper: Zero Downtime for Zero Day Vulnerabilities

Security Assessment of Waratek AppSecurity for Java. Executive Summary

Runtime Application Self Protection (RASP) Making Applications Self Protecting, Self Diagnosing and Self Testing

Netzwerkvirtualisierung? Aber mit Sicherheit!

Waratek Cloud VM for Java. Technical Architecture Overview

Java Monitoring. Stuff You Can Get For Free (And Stuff You Can t) Paul Jasek Sales Engineer

Operations and Monitoring with Spring

Monitoring applications in multitier environment. Uroš Majcen A New View on Application Management.

Justin Bruns, Performance Test Lead, Fireman's Fund Insurance Robert May, Enterprise Software Tools Administrator Fireman's Fund Insurance

XAP 10 Global HTTP Session Sharing

Virtual Machines and Security Paola Stone Martinez East Carolina University November, 2013.

<Insert Picture Here> Java Application Diagnostic Expert

Protecting Your Organisation from Targeted Cyber Intrusion

Application Whitelisting - Extend your Security Arsenal? Mike Baldi Cyber Security Architect Honeywell Process Solutions

IMPROVING VULNERABILITY MANAGEMENT EFFECTIVENESS WITH APPLICATION SECURITY MONITORING

What s New in MySQL 5.7 Security Georgi Joro Kodinov Team Lead MySQL Server General Team

SQL Injection January 23, 2013

BIRT Application and BIRT Report Deployment Functional Specification

How To Perform An External Security Vulnerability Assessment Of An External Computer System

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

Performance Management for Cloudbased STC 2012

Building Private Cloud Architectures

Service Manager and the Heartbleed Vulnerability (CVE )

WebSphere Application Server - Introduction, Monitoring Tools, & Administration

Winning the J2EE Performance Game Presented to: JAVA User Group-Minnesota

WEBLOGIC ADMINISTRATION

Liferay Portal Performance. Benchmark Study of Liferay Portal Enterprise Edition

Glassfish, JAVA EE, Servlets, JSP, EJB

Tuning WebSphere Application Server ND 7.0. Royal Cyber Inc.

ArcGIS Server Security Threats & Best Practices David Cordes Michael Young

ITG Software Engineering

How To Manage A Network Security Risk

High Availability Implementation for JD Edwards EnterpriseOne

ADDING NETWORK INTELLIGENCE TO VULNERABILITY MANAGEMENT

Cautela Labs Cloud Agile. Secured. Threat Management Security Solutions at Work

Adobe Systems Incorporated

IBM Managed Security Services Vulnerability Scanning:

Software Vulnerability Assessment

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

Monitoring Best Practices for COMMERCE

.NET and J2EE Intro to Software Engineering

Scanless Vulnerability Assessment. A Next-Generation Approach to Vulnerability Management

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

Vulnerability Management

Protecting the Cloud from Inside

White Paper Converting Lotus Notes Applications to the Cloud Using the CIMtrek converter Product

Intro to NSX. Network Virtualization VMware Inc. All rights reserved.

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings

McAfee Database Security. Dan Sarel, VP Database Security Products

Chapter 1 - Web Server Management and Cluster Topology

Contents Introduction... 5 Deployment Considerations... 9 Deployment Architectures... 11

Oracle Maps Cloud Service Enterprise Hosting and Delivery Policies Effective Date: October 1, 2015 Version 1.0

Passing PCI Compliance How to Address the Application Security Mandates

Microsoft Hyper-V Powered by Rackspace & Microsoft Cloud Platform Powered by Rackspace Support Services Terms & Conditions

WEB APPLICATION FIREWALLS: DO WE NEED THEM?

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

Configuring Apache Derby for Performance and Durability Olav Sandstå

Implementing a secure high visited web site by using of Open Source softwares. S.Dawood Sajjadi Maryam Tanha. University Putra Malaysia (UPM)

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune Tel: /

How To Use The Dcml Framework

THE BLIND SPOT IN THREAT INTELLIGENCE THE BLIND SPOT IN THREAT INTELLIGENCE

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

Cloud Based Application Architectures using Smart Computing

Internal Penetration Test

APPLICATION SECURITY: ONE SIZE DOESN T FIT ALL

How To Monitor A Server With Zabbix

JAVA PROBLEMS IN THE CLOUD: THE NEED FOR MULTITENANT JAVA. White Paper

User Guide for VMware Adapter for SAP LVM VERSION 1.2

INFORMATION SUPPLEMENT. Migrating from SSL and Early TLS. Version 1.0 Date: April 2015 Author: PCI Security Standards Council

9/26/2011. What is Virtualization? What are the different types of virtualization.

THE SMARTEST WAY TO PROTECT WEBSITES AND WEB APPS FROM ATTACKS

Securing OS Legacy Systems Alexander Rau

Blackboard Learn TM, Release 9 Technology Architecture. John Fontaine

Reference Architecture: Enterprise Security For The Cloud

Virtualization Security and Best Practices. Rob Randell, CISSP Senior Security Specialist SE

Project Manager 1 Post == Experience years in Project Management in reputed company, Salary Rs.1,20,000/-

Web Application Security

Reducing Application Vulnerabilities by Security Engineering

HP OO 10.X - SiteScope Monitoring Templates

Informatica Master Data Management Multi Domain Hub API: Performance and Scalability Diagnostics Checklist

Case Study - I. Industry: Social Networking Website Technology : J2EE AJAX, Spring, MySQL, Weblogic, Windows Server 2008.

Payment Card Industry (PCI) Data Security Standard

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

Sygate Secure Enterprise and Alcatel

2015 Vulnerability Statistics Report

Private Cloud for WebSphere Virtual Enterprise Application Hosting

Web Application Security Assessment and Vulnerability Mitigation Tests

The Need for Real-Time Database Monitoring, Auditing and Intrusion Prevention

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

CS 356 Lecture 25 and 26 Operating System Security. Spring 2013

Transcription:

Put a Firewall in Your JVM Securing Java Applications! Prateep Bandharangshi" Waratek Director of Client Security Solutions" @prateep" Hussein Badakhchani" Deutsche Bank Ag London Vice President" @husseinb"

Several former Home Depot employees said they were not surprised the company had been hacked. They said that over the years, when they sought new software and training, managers came back with the same response:! "! We sell hammers! - New York Times, September 19, 2014"

There are over 1,000 different types of software weaknesses, most of which are impossible for developers to avoid without training and development support! State of Developer Application Security Knowledge" Aspect Security, September 2014"

More Secure Application Coding Cannot Solve the Problem" Relatively little application code is written and controlled by the enterprise" 3 rd party libraries heavily used and often open sourced" Application servers and frameworks (JBOSS, Websphere, Weblogic, Tomcat, etc.)" Java APIs " Purchased software packages" None of these are written and maintained by the enterprise, creating substantial exposure" Customer Business Logic (WARs, EJBs) 3 rd Party Libraries (JARs) App Servers, Frameworks (JEE) Java APIs (JRE) Java VM Layer OS / Network

Source: 2014 Sonatype Open Source and Application Security Survey

Struts2 CVEs" The struts2 framework has had 10 CVEs issued in the last two years with a CVSS score of 9 or 10" CVE = Common Vulnerabilities and Exposures" CVSS = Common Vulnerability Scoring System"

Legacy Java" Most enterprises have large numbers of applications running on older, legacy Java versions" Updating these apps to the current Java edition is often risky, time consuming, and expensive"

JVMs themselves are not secure" Java Code" Application" Dependencies" Security Manager" JVM" JNI" C/C++ Code" The JVM itself performs NO security checks." All enforcement is through the Java API s and the Security Manager (SM) levels." If the SM is compromised or not even enabled then the JVM can be instructed to do ANYTHING." The JVM doesn t question when your app starts to:" Delete files, open sockets, fork processes, change file permissions, insert SQL parameters, reflect classes etc."

Java Containers" Waratek provides containment and isolation technology for Java built on top of Oracle Hotspot" A Java Virtual Container is an in-jvm container with built in security and resource controls" Java containers boot their own JRE inside them which can be different to the host JRE version" JVC-1" JVC-2" JVC-3" Java VM" Java Containers have elastic resources that can be changed at runtime. Resources such as memory, CPU, bandwidth and file I/O."

Java Containers monitor all activity" Java Code" Waratek Container" Application" Dependencies" Security Manager" Waratek" JVM" Process Container" The container layer gets to inspect every call the application and its dependent libraries need to make." The calls can then be checked against rules, any suspicious behavior is then logged." We can also isolate untrusted JNI code by isolating the library within its own process container at the OS level." Everything is local to the JVM so there is very low overhead." No agents or code changes are required." " JNI" C/C++ Code"

Rules cover all application aspects" Language rules:" Class loading class or package level." Class linking any defined class." Reflection from variable to package level." Throwable exception classes." Input Output rules:" File any file I/O." Network any network I/O." Other rules:" Native code accessing JNI." Process execution starting external processes." External attack vectors:" SQL injection." Tooling support makes rule customization simple."

What a Container Rule File Looks Like" # Example file rules file:read:/etc/:deny:warn file:read:/etc/passwd:allow:warn file:exec:*:deny:warn # Example networks rules network:connect:www.google.com::deny:warn network:accept:localhost::deny:warn # SQL injection mitigation for Oracle PL/SQL sql:database:oracle:deny:warn # Virtual patch rule for an Apache Struts2 vulnerability reflect:class:com.opensymphony.xwork2.ognl.securitymemberaccess:method :setallowstaticmethodaccess(z)v:deny:warn

Rules can secure any Java version" Java SE 5 Container" Java SE 5 Application" Java SE 5 JRE" Waratek" Java VM" SE 7" Java SE 5 Exploit" Network" This approach to legacy Java has two key advantages, first no changes to the application:" The application does not see an API change." Deprecated calls still function." Serialized objects still function." The application is still using the API it was first tested against." Second, externally the world can move on:" Administration is on an up-to-date SUPPORTED platform." The surrounding infrastructure can be updated."

SQL Injection" " " " " " " String id = request.getparameter("id"); String sql = "SELECT * FROM users WHERE id = '" + id + "'";

SQL Injection" http://example.com/page.jsp?id=1' OR 1=1-- http://example.com/page.jsp?id=1%27%20or%201=1-- SELECT * FROM users WHERE id = '1' OR 1=1--'

Stopping SQL Injection" Java Containers automatically perform runtime taint-tracking without any changes to application code" Taint-tracking marks as untrusted all user-input data to a Java app (like HTTP request parameters) in real-time" When untrusted user-input data is passed to an SQL query, syntactic analysis is used to accurately and reliably detect SQL injection" When SQL injection is detected, the Java Container gracefully rejects the unsafe SQL query and the application continues un-exploited" No tuning" No regex" No false positives" No code changes"

DEMO!

Runtime Application Self Protection (RASP)" Applications should be capable of self-protection that is, have protection features built into the application runtime environment. " " [ RASP solutions ] possesses the maximum information necessary to make the most accurate detection or protection decision.!! - Gartner"

Agenda 1 Securing Legacy Java DAP Secure Legacy Java 2 Virtual Patching Waratek s Application Firewall 3 Application Security Lock down the application Deutsche Bank Enterprise Architecture

Agenda 1 Securing Legacy Java DAP Secure Legacy Java 2 Virtual Patching Waratek s Application Firewall 3 Application Security Lock down the application Deutsche Bank Enterprise Architecture

Securing Legacy Java Using the Waratek Cloud VM in conjunction with DAP, the immediate risks posed by legacy applications can be mitigated and a route for the upgrade and future sustained management of the application can be established. Applications will be quarantined without need of code changes or transformation and once the upgrades to new versions of Java have been tested the application is promoted to production. Quarantine with Waratek VM Deutsche Bank Enterprise Architecture

Securing Legacy Java Applications will be have their legacy JVMs upgraded and tested on the DAP Secure Legacy Java infrastructure and once all tests have successful been passed the application will be promoted to the DAP Production Cluster. Sustain and Maintain with DAP Deutsche Bank Enterprise Architecture

Securing Legacy Java No code changes required to deploy legacy Java applications to new version of host Waratek VM. Application Firewall protects against a large number of attack with just a handful of rules. Guest host JVM can be patched using Virtual Patching (no downtime or release cycle) Ultimately this is a more economic, rapid and safer option than traditional upgrade approaches. Deutsche Bank Enterprise Architecture

Agenda 1 Securing Legacy Java DAP Secure Legacy Java 2 Virtual Patching Waratek s Application Firewall 3 Application Security Lock down the application Deutsche Bank Enterprise Architecture

Virtual Patching Uses the Waratek Application Firewall to patch applications for new security vulnerabilities that have been identified. Eliminates the dependency on a full release cycle to patch an application. Applications can be patched dynamically in situ (no application, container or JVM restart). Applications can be patched far more quickly giving a more rapid response to security vulnerabilities. Reduces the disruption caused to application teams from unscheduled patching events. Ultimately this a far more cost effective way to manage the patching of applications for newly identified security vulnerabilities. Deutsche Bank Enterprise Architecture

Agenda 1 Securing Legacy Java DAP Secure Legacy Java 2 Virtual Patching Waratek s Application Firewall 3 Application Security Lock down the application Deutsche Bank Enterprise Architecture

Application Security Configure the Waratek Application Firewall to prohibit Java Classes, Packages and APIs. Lock down disk, network and OS resources with ease in side the JVM. Warn on indicators of intrusion. Prevent Cross Site Scripting, SQL Injection and other common attacks. The costs of remediating identified security vulnerabilities in our applications is greatly reduced by eliminating the need to refactor code. Deutsche Bank Enterprise Architecture

Summary" Secure coding is complex, time consuming and very difficult to get right" Many applications have potential risks associated with imported components" Legacy applications running on Legacy Java versions are very widespread" Application Security controls are ideally placed inside the JVM" Java Containers enable Run Time Application Self Protection"