Risk
4/18/2013
10:16 AM
50%
50%

Java 7 Malicious App Warning System Draws Criticism

Java runtime environment fails to verify that digital certificates used to sign "trusted" applications haven't been revoked.

This week's release of Java 7 update 21 adds a system meant to warn users away from allowing Java apps that haven't been signed with a digital certificate -- from a certificate authority -- to be allowed to execute. But the new Java 7 runtime environment warning system has been criticized on both usability and information security grounds.

On the user interface front, according to Oracle, the Java Control Panel now presents "additional information and [requires] confirmation before being allowed to run" any Java content or apps. That information includes warnings against executing suspect Java apps, although users will still be able to do so. Some warnings come in the form of a yellow triangle, indicating that an application "cannot be identified because the certificate is untrusted or expired," while a yellow shield and alert will caution when an app "is unsigned and/or the certificate is not valid" and thus should not be trusted.

Cue usability concerns. "Logo and shield. Triangle and shield. Shield alone. Triangle alone. Confused yet?" said Paul Ducklin, head of technology for Sophos in the Asia Pacific region, in a blog post. "You're forgiven if you are, because these dialogs end up asking the very questions that you might reasonably expect Java to answer."

That's because Java 7 doesn't know whether the digital certificates it's relying on are still valid, owing to it failing to use the Online Certificate Status Protocol (OCSP) to check the revocation status of a digital certificate, or at least reference some other type of certificate revocation list (CRL).

"Even the latest #Java [release] still does not check for CRL/OCSP. [It] does have some blacklist or something though ... #blah," said Jindrich Kubec, director of threat intelligence at antivirus vendor Avast, via Twitter.

[ Massive interest in current events + Java vulnerabilities = Good news for cyber scammers. See Malware Attackers Exploit Boston Marathon Bombing. ]

Oracle didn't immediately respond to an emailed request for detailed information about how the Java run-time environment assesses certificate validity, and how often this information gets updated.

But according to David Barroso, head of cybersecurity intelligence at London-based Telefonica Digital, the Java runtime environment relies on a blacklist for known-bad Java archive (.jar) files, which contain Java applets. "The blacklist is pretty useless and it only blocks some already known signed vulnerable .jars," he said via Twitter.

According to veteran Java bug-hunter Adam Gowdiak, CEO and founder of Poland-based Security Explorations, the updated Java 7 runtime environment's Java Control Panel changes also put users at risk by allowing them to execute untrusted code. "The only good thing is that users neglecting to update their Java software will be better protected -- unsigned and self-signed Java will not run on their systems," he said. "Users of [the] current Java version will be able to run unsigned and self-signed Java code."

Despite Oracle's Java Control Panel changes, many security experts continue to recommend that people avoid using Java, if possible, or else take suitable precautions. "Disable Java in the browser unless you have a specific business need to run it," said Ross Barrett, senior manager of security engineering at Rapid7, via email. "Ideally, only enable it in an alternate browser and restrict use of that browser to the sites where you need Java."

For anyone who continues to use the browser plug-in, meanwhile, beware exploits that target zero-day Java vulnerabilities. "With a browser plug-in ... as complex as Java -- such as Flash, for instance -- you should always assume that some attacker, somewhere, has at least one zero-day waiting for the right opportunity," said Barrett.

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Cartoon
Current Issue
Flash Poll
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2015-2977
Published: 2015-07-29
Webservice-DIC yoyaku_v41 allows remote attackers to create arbitrary files, and consequently execute arbitrary code, via unspecified vectors.

CVE-2015-2978
Published: 2015-07-29
Webservice-DIC yoyaku_v41 allows remote attackers to bypass authentication and complete a conference-room reservation via unspecified vectors, as demonstrated by an "unintentional reservation."

CVE-2015-2979
Published: 2015-07-29
Webservice-DIC yoyaku_v41 allows remote attackers to execute arbitrary OS commands via unspecified vectors.

CVE-2015-4286
Published: 2015-07-29
The web framework in Cisco UCS Central Software 1.3(0.99) allows remote attackers to read arbitrary files via a crafted HTTP request, aka Bug ID CSCuu41377.

CVE-2015-4290
Published: 2015-07-29
The kernel extension in Cisco AnyConnect Secure Mobility Client 4.0(2049) on OS X allows local users to cause a denial of service (panic) via vectors involving contiguous memory locations, aka Bug ID CSCut12255.

Dark Reading Radio
Archived Dark Reading Radio
What’s the future of the venerable firewall? We’ve invited two security industry leaders to make their case: Join us and bring your questions and opinions!