Breaking with an oft-criticized tradition, Apple on Monday released a Java update for OS X on the same day that Oracle patched the vulnerabilities for Windows and other operating systems.
Apple issued separate updates for OS X 10.7, aka Lion, and OS X 10.6, or Snow Leopard, that quashed 11 bugs in each edition. Oracle, which maintains Java for Windows, Linux and Solaris, shipped its update to patch 14 vulnerabilities.
Of the three bugs that Oracle fixed but Apple did not, two applied solely to non-Apple operating systems, Solaris and Linux. It was unclear why the third was not included in Apple's version.
The same-day patching was unprecedented: Apple, still responsible for Java security updates for Lion and Snow Leopard, typically lags behind Oracle by weeks or even months.
That practice turned disastrous earlier this year when Apple's Java update lagged behind Oracle's by seven weeks. Hackers jumped at the opportunity, and quickly infected an estimated 600,000 Macs with the Flashback malware by exploiting a Java bug that Oracle had patched but Apple had not.
Not surprisingly, security experts blamed Apple's lethargy for the outbreak.
To some experts, Apple's move Monday was its response to that criticism.
"It's simple, really," said Andrew Storms, director of security operations at nCircle, of Apple's hustling this Java update to users. "Apple's lack of process was directly related to Flashback infecting 600,000-plus Macs. For a company that says that their systems don't get malware, well, guess what? They got a lot of people infected because they couldn't deliver the Java update in a timely manner."
Storms and other security professionals have hammered at Apple for years about its lack of urgency to patch Java and other third-party code it either once included, like Adobe's Flash Player, or that it still does.
"It was a total process fail [earlier this year], and something we've been chiming about for years," said Storms. "If Apple wants to distribute third-party apps in their OS, then they need to be responsible and keep them up-to-date. Or if you can't do the job, then it's time to step aside."
That's exactly what Apple has done with Java.
Last year, the Cupertino, Calif. company halted development on the OS X version of Java, and said it was handing the job off to Oracle. Lion, the version of OS X that launched in July 2011, was the first that did not include Java; users had to download and install the software themselves.
Oracle will be responsible for development, maintenance and the updates for Java for OS X as of Java SE 7 and later. Next month's OS X 10.8, Mountain Lion, will follow in Lion's footsteps, and not bundle Java.
As an additional defense, Apple in April issued an OS X update that disabled automatic execution of Java applets in the Java browser plug-in, and deactivated the Oracle software entirely if it had not been used in the past 35 days.
Monday's update upped the Java exclusion even more: It also prevented Java that "do[es] not meet the criteria for minimum safe version" from running at all. Apple did not specify which versions were affected, but in its advisory added, "The minimum safe version of Java is updated daily, as needed," hinting that the software pegged as out-of-date would change as time goes on.
Apple made a similar move in May when it began blocking older versions of Adobe's Flash Player plug-in from executing in the Safari browser.
Snow Leopard users -- as well as those running Lion who have earlier installed Java -- will be notified of the patches automatically by the operating system's update tool.
Gregg Keizer covers Microsoft, security issues, Apple, Web browsers and general technology breaking news for Computerworld. Follow Gregg on Twitter at @gkeizer, on Google+ or subscribe to Gregg's RSS feed. His email address is firstname.lastname@example.org.
Read more about security in Computerworld's Security Topic Center.