近頃、明確なセキュリティ問題CVE-2012-4681に対する拙い反応が原因でJavaが話題になっている。この問題とJavaのブラウザプラグインを狙った脆弱性(CVE-2012-1682、CVE-2012-3136、CVE-2012-0547)は、ニュースに取り上げられ、特に、Blackholeに攻撃用のコードが加えられたことが判明し、さらに話題になった。Blackholeは悪名高いハッキングツールでさまざまな攻撃コードが同梱されており、対象のマシンに対して同梱されている攻撃方法をひとつずつを試す。これら4つの脆弱性の影響を受けるのはOracle Java SE 7 update 6とこれよりも前のバージョンだ。CVE-2012-0547はJava 6 update 34とこれよりも前のバージョンが影響を受ける。
セキュリティの新興企業であるSecurity Explorationsは4月、この脆弱性についてOracleとAppleへ秘密裡に情報提供を行っている。Oracleはこの脆弱性に対する攻撃が注目を集めた直後の8月30日にパッチ(Java 7 update 7)を公開した。しかし、このパッチ自体に脆弱性があった。Security ExplorationsのCEOであるAdam Gowdiak氏はInfoQのメール取材に次のように答えている。"Oracleが8月30日にリリースしたパッチバージョンであるJava 7 update 7には攻撃者が利用してJavaのセキュリティサンドボックスを完全に侵害できる複数の脆弱性が含まれています。パッチリリース後の31日にOracleによって報告された脆弱性も含まれています。"
以前の脆弱性とは異なり、パッチに含まれていた脆弱性に対する攻撃はまだ見つかっていない。しかし、Security Explorationsのステータスページによれば、同社は攻撃が可能であることを示す概念実証コードと脆弱性のレポートを持っている。
Oracleは他のプラットフォームと同様にOS X向けのJava SE 7を提供しているが、AppleはまだJava 6をメンテナンスしている。9月5日にはCVE-2012-0547に対応したアップデードを公開している。Java for OS X 2012-005とJava for Mac OS X 10.6 Update 10もブラウザが自動的にアップレットを実行しないように構成している。さらに一定期間アップレットが実行されていない場合はJavaのウェブプラグインが無効になる。
Oracleによってサポートされているプラットフォームでは既に利用できるアップデードを何ヶ月も後になってリリースしたAppleは批判にさらされている。悪名高いトロイの木馬であるFlashbackを見ればどのくらいリスクがあるのかわかる。このトロイの木馬はOracleが2月に修正したJavaの脆弱性を突くが、OS Xの修正は4月まで放置されていた。その結果670,000台のOS Xマシンのボットネットが生まれた。しかし、Appleはその後素早く対応して6月にOracleと同時にアップデートを公開した。
CVE-2012-4681はIBMのJavaランタイムにもある。この脆弱性は概念実証コードと共に9月11日にIBMへ通報されている。
この問題はスタンドアロンのJavaディスクトップアプリケーションやサーバで実行されているJavaには影響を与えないので、最低限、Javaのブラウザプラグインを無効にし、Javaが必要になったら再度有効にするか他のブラウザを利用するかしればいい。United States Computer Emergency Readiness Team (US-CERT)は詳細なアドバイスと対応方法を公開し、可能であれば完全にJavaを案院ストールするという大胆な方法を推奨している。