Application Security

9/30/2014
07:30 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
100%
0%

How A Major Bank Hacked Its Java Security

Deutsche Bank London helped create a new application self-defense tool to lock down and virtually patch its Java-based enterprise applications -- even the oldest ones.

Deutsche Bank AG London has what many large enterprises have: numerous internal applications based on various versions of Java, many of which are older and can't be patched nor updated. So the bank helped develop a tool that sits below the application to detect and prevent attacks and apply virtual patches.

The bank, a subsidiary of Deutsche Bank AG, made the move after it inventoried its hundreds of internal applications and discovered a mix of old and new versions of Java, some of which were legacy applications that had become increasingly difficult to patch or update. Oracle's Java infamously has been riddled with security vulnerabilities, and Java client machines have become a favorite target of attackers.

"We [had] uncovered a large degree of variance of Java deployed in the bank's infrastructure," Hussein Badakhchani, vice president of Deutsche Bank London, says in an exclusive interview with Dark Reading today. His application group teamed up with IT security to determine how to secure the large number of legacy Java applications running at the bank.

The initial goal was to convert its applications -- everything from payments to training apps -- to a new platform-as-a-service the bank had built based on Java Virtual Machine (JVM). "We wanted to move away from DIY to a managed service" for enterprise applications. "The question becomes 'If you can't decommission an application and you can't operate it [or update its Java version], what can you do with it?'"

The bank worked with security vendor Waratek to create a tool that runs within JVM and efficiently secures legacy Java applications. Call it application self-defense: The result was a software solution that uses what Gartner analyst Joseph Feiman calls a "self-protecting" application approach, or Runtime Application Self Protection (RASP). According to Feiman, RASP detects and blocks attacks, and it operates in the application's runtime environment.

"Modern security fails to test and protect all apps. Therefore, apps must be capable of security self-testing, self-diagnostics and self-protection," he writes in a new Gartner Maverick Research report on RASP. Gartner predicts that 25% of web and cloud applications will become self-protecting by 2020; fewer than 1% operate that way today.

It's a natural fit, according to security expert Dan Kaminsky. "The JVM -- and CLR [Common Language Runtime] and even the various JS [JavaScript] engines -- are designed to detect many errors. Why not instrument them for security and see what comes up?" Kaminsky says. "Over time, the languages and platforms we use increasingly support securing the applications we write on top of them. More importantly, the cost of that security diminishes as the platform shoulders more of the burden."

Kaminsky, chief scientist at WhiteOps, says it's not so much about Java's security problems as it is about looking at a way to apply security to multiple different applications, at scale.

"Traditional WAFs [web application firewalls] can often be somewhat distant from the platforms they're securing" says Kaminsky, who also serves as a technical adviser to Prevoty, a competitor to Waratek in the RASP space. "What if there was deeper integration? What if the WAF didn't have to guess what the end application saw, what if it could ask… or if it was alerted in case of problems?"

Deutsche Bank London had battled the headache of off-cycle patching for zero-day vulnerabilities that occur outside its orchestrated, regular quarterly patching cycles. "Problems arise from unscheduled patching events for zero-day exploits," Badakhchani says.

The new RASP approach provides virtual patching to the bank's Java-based applications, so the bank doesn't have to deal with out-of-band patching. Even the regular patching cycle can be disruptive. "To try to remedy every vulnerability, when you have 600 business applications, the amount of work you need to do in standard patching is extremely expensive." It involves, among other things, "hiring teams of developers" to decode patches.

It works like this: An attack that attempts to exploit or employ a Java process, such as a SQL injection attempt, cannot execute. "If an attack gets past our security, for example, and tries to make a call to a Java process, it won't be allowed to. We'll be alerted to an intrusion," he says. The tool can detect known and unknown attacks.

"It's [like] placing a firewall within the application in the JVM itself," Badakhchani says.

Like any security layer, there's a convenience or performance tradeoff. He says the RASP tool comes with a performance tradeoff in about 10% of the bank's applications. "It's not that significant… The benefits from the security side outweigh" that, he says.

Badakhchani, along with Waratek director of client security solutions Prateep Bandharangshi, will present their work today at the Oracle JavaOne conference in San Francisco.

Kelly Jackson Higgins is Executive Editor at DarkReading.com. She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Kelly Jackson Higgins
50%
50%
Kelly Jackson Higgins,
User Rank: Strategist
10/1/2014 | 9:20:19 AM
Re: I like it, but will wait for peer review.
Good points, @aws0513. I think application "self-defense" is an intriguing approach, and there are still some unanswered questions, for sure. It sounds like this approach could ultimately replace or integrate more deeply with the WAF and some other tools if these functions are built-in and the application itself could do the job. I thought Dan Kaminsky shed some nice perspective on this.
aws0513
50%
50%
aws0513,
User Rank: Ninja
10/1/2014 | 8:57:16 AM
I like it, but will wait for peer review.
From what is described in the article, this sounds like a good idea.
However, I am still holding back on final judgement until the Java community weighs in.
In particular, I am curious what kind of testing they did to get to the 10% performance impact measurement.

Like I said, I like what I am hearing here, but feel it is necessary to have peer review for validation of the approach.  I suspect/hope the same techniques could be applied to other programming languages as well.
White House Cybersecurity Strategy at a Crossroads
Kelly Jackson Higgins, Executive Editor at Dark Reading,  7/17/2018
Mueller Probe Yields Hacking Indictments for 12 Russian Military Officers
Kelly Jackson Higgins, Executive Editor at Dark Reading,  7/13/2018
10 Ways to Protect Protocols That Aren't DNS
Curtis Franklin Jr., Senior Editor at Dark Reading,  7/16/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win a Starbucks Card! Click Here
Latest Comment: This comment is waiting for review by our moderators.
Current Issue
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2016-10727
PUBLISHED: 2018-07-20
camel/providers/imapx/camel-imapx-server.c in the IMAPx component in GNOME evolution-data-server before 3.21.2 proceeds with cleartext data containing a password if the client wishes to use STARTTLS but the server will not use STARTTLS, which makes it easier for remote attackers to obtain sensitive ...
CVE-2018-8018
PUBLISHED: 2018-07-20
Apache Ignite 2.5 and earlier serialization mechanism does not have a list of classes allowed for serialization/deserialization, which makes it possible to run arbitrary code when 3-rd party vulnerable classes are present in Ignite classpath. The vulnerability can be exploited if the one sends a spe...
CVE-2018-14415
PUBLISHED: 2018-07-20
An issue was discovered in idreamsoft iCMS before 7.0.10. XSS exists via the fourth and fifth input elements on the admincp.php?app=prop&do=add screen.
CVE-2018-14418
PUBLISHED: 2018-07-20
In Msvod Cms v10, SQL Injection exists via an images/lists?cid= URI.
CVE-2018-14419
PUBLISHED: 2018-07-20
MetInfo 6.0.0 allows XSS via a modified name of the navigation bar on the home page.