Oracle on Sunday issued an emergency Java update to patch two critical vulnerabilities, including one that had been exploited in ongoing and accelerating attacks.
Also yesterday, a researcher noted for uncovering scores of Java bugs maintained that Oracle should have fixed that flaw last year.
The "out-of-band" update patched a pair of vulnerabilities -- identified as CVE-2013-0422 and CVE-2012-3174 -- with Java 7 Update 11.
The decision to release an emergency security update outside Oracle's normal schedule -- the first time the company has done so since August 2012 -- was triggered by confirmation last week that several notorious cybercrime kits were exploiting a "zero-day," or unpatched vulnerability in Java.
Pressure increased on Oracle Thursday when the U.S. Computer Emergency Readiness Team (US-CERT), part of the U.S. Department of Homeland Security (DHS), urged users to disable Java in their Web browsers.
Some browser makers didn't wait but took matters into their own hands. On Friday, Mozilla added Java 7 to its "Click to Play" blacklist, meaning that users had to explicitly agree to run the Java plug-in inside Firefox. Mozilla debuted Click to Play in Firefox 17, which launched in last November.
Oracle was clear to customers that they needed to update Java 7 immediately.
"Due to the severity of these vulnerabilities, the public disclosure of technical details and the reported exploitation of CVE-2013-0422 'in the wild,' Oracle strongly recommends that customers apply the updates provided by this Security Alert as soon as possible," the company's alert read.
In a Sunday blog post, Eric Maurice, the director of Oracle's software security assurance group, acknowledged that crimeware kits were leveraging one or more of the bugs. "Some exploits are available in hacking tools," Maurice said.
Some confusion still surrounded the Java bugs, however.
While Oracle and others -- including US-CERT and antivirus company Symantec -- have said the vulnerabilities affected only Java 7, others have rebutted that claim. Immunity Inc.'s analysis (download PDF), for example, concluded that at least one of the bugs leveraged in current exploits -- by all accounts, the attack code relied on two vulnerabilities -- was also present in some versions of Java 6, the edition set for retirement next month.
And Adam Gowdiak, founder and CEO of Polish security firm Security Explorations, who has dug up numerous Java vulnerabilities and reported them to Oracle, said on Sunday that he stood by his earlier accusation that Oracle had been sloppy with its patching.
According to Gowdiak, CVE-2013-0422 should have been patched last fall, after he told Oracle of a bug in the same section of code. Oracle released a security update in October that patched the vulnerability Gowdiak reported.
But Oracle should have done more investigative work, Gowdiak contended in a message posted on the Bugtraq security mailing list last week. Then, he called Oracle's efforts "not sufficiently comprehensive."
On Sunday, he defended that allegation. "We stand in whole by the claims that we've made recently," Gowdiak said in an email. "The zero-day attack code, in the form found in the wild, would not be possible if Issue 32 had been correctly resolved by Oracle in Oct. 2012 Java SE CPU."
"Issue 32" is Security Explorations' nomenclature for the vulnerability it contends was in the same Java function as CVE-2013-0422.
Oracle has not responded to a request for comment. But rather than credit Gowdiak with reporting CVE-2013-0442, it acknowledged a researcher named Ben Murphy, who submitted the bug via HP TippingPoint and its Zero Day Initiative bounty program.
Along with the Java 7 Update 11 delivered Sunday, Oracle also modified Java 7 so that it automatically resets to the "High" security level. At that setting, Java notifies users before they can run unsigned Java applets.
"Unsuspecting users visiting malicious web sites will be notified before an applet is run and will gain the ability to deny the execution of the potentially malicious applet," Oracle's Maurice wrote.
Java 7 Update 11 can be downloaded from Oracle's website for Windows, OS X and Linux. Windows users can also rely on the automatic update tool to retrieve and install the patched version. Links to all available downloads can be found on this page.
Gregg Keizer covers Microsoft, security issues, Apple, Web browsers and general technology breaking news for Computerworld. Follow Gregg on Twitter at @gkeizer, or subscribe to Gregg's RSS feed . His e-mail address is firstname.lastname@example.org.