セキュリティ企業 Bit9 のレポートによると、過去 6 か月間に Oracle が Java セキュリティを大幅に改善したにもかかわらず、ほとんどの組織がシステムに古いバージョンのソフトウェアをインストールしているため、Java の脆弱性は依然として組織にとって大きなセキュリティ リスクとなっています。
Bit9 のレポートは木曜日に発表され、同社のソフトウェア評価サービスを利用する約 400 の組織が所有する約 100 万のエンタープライズ エンドポイント システムから収集された Java の使用状況に関するデータに基づいています。
データによると、Java 6 はエンタープライズ環境で最も普及している Java のメジャー バージョンであり、Java がインストールされているエンタープライズ コンピューターの 80% 以上に存在しています。
Java 6は4月にパブリックサポートが終了し、長期サポート契約を締結しているOracleのお客様のみが引き続きセキュリティアップデートを受け取ることができます。Oracleが最近セキュリティ強化に注力しているバージョンであるJava 7は、Bit9がサンプル調査したエンドポイントシステムの約15%にしか検出されませんでした。

さらに、システム上で Java 6 を実行している企業のほとんどが、Java 6 の最新のセキュリティ アップデートを適用していないことがセキュリティ企業の調査で判明しました。
Bit9のデータによると、最も広く導入されているJavaバージョンはJava 6 Update 20で、エンドポイントの9%強にインストールされていました。Bit9によると、このバージョンのJavaは合計215件のセキュリティ問題を抱えており、そのうち96件は共通脆弱性評価システム(CVSS)で最大の影響度スコアを獲得しています。
Java 6 の公開されている最後のセキュリティ アップデートは Java 6 Update 45 です。これは、Bit9 がレポート用のデータを収集した時点で入手可能な最新バージョンの Java 7 Update 21 と同時に 4 月にリリースされました。
同社によると、企業のエンドポイントシステムのうち、Java 7 Update 21を実行しているのはわずか3%でした。しかし、これらのエンドポイントはサンプル調査対象組織のわずか0.25%に属しており、エンドポイントの数が多い組織ほど、システムに最新バージョンのJavaがインストールされている可能性が高いことを示唆しています。
もう一つの問題は、多くの企業システムで複数のバージョンのJavaが稼働していることです。システムの約42%には2つ以上のバージョンのJavaが同時にインストールされており、約20%には3つ以上のバージョンのJavaがインストール済みでした。

Bit9のレポートによると、平均して組織の環境には50種類以上のJavaバージョンがインストールされています。約5%の組織では100種類以上のバージョンがインストールされています。
この問題は主に、Java のインストールおよび更新プロセスが古いバージョンを処理する方法に起因します。
Java 7アップデータは既存のJava 6のインストールを削除しようとしますが、Java 7をクリーンインストールしても古いバージョンは削除されないと、Bit9の最高技術責任者であるハリー・スヴェルドラブ氏は述べています。また、Java 7のインストールやアップデートのプロセスでは、Java 5バージョンは削除されないとも述べています。
Bit9のデータによると、93%の組織がシステムの一部に5年以上前のバージョンのJavaを使用していることがわかりました。また、51%の組織は5年から10年前のバージョンを使用しています。
システムに複数のバージョンのJavaを同時にインストールすると、攻撃者が古くて脆弱なバージョンを狙ってコンピュータに侵入できるという問題があります。そうなると、新しいバージョンのJavaのセキュリティは役に立たなくなります。
偵察目的でシステムにインストールされているすべてのJavaバージョンを列挙するコードは、実際の攻撃ですでに確認されているとBit9は報告書で述べている。
システムに複数のJavaバージョンが存在すると、顧客はレガシーアプリケーションを実行できるため使い勝手は向上するが、セキュリティの観点からは悪夢だとスヴェルドラヴ氏は指摘する。インストールされるバージョンごとに、攻撃者が標的とする既知の脆弱性が新たに追加されるのだ、と同氏は指摘する。
スヴェルドラヴ氏は、5〜10年前のバージョンのJavaを稼働させている企業の状況を、Windows 95を稼働させている状況に例えた。この方法は互換性の点では便利かもしれないが、セキュリティ上の大きなリスクがあると同氏は述べた。
スヴェルドラブ氏は、企業環境内でのこうした Java バージョンの断片化は、多くの場合、意図的なものではないだろうと指摘する。多くの企業は、インストールしたバージョンの数を把握しておらず、追跡もしていないからだ。
スヴェルドラブ氏は、まず第一に、組織は自社の環境にどのバージョンのJavaがインストールされているのか、またどこにインストールされているのかを評価する必要があると述べた。次のステップは、セキュリティポリシーの観点から、Javaが必要かどうか、そして必要であればどのような目的で必要かを真剣に検討することだと同氏は述べた。
この評価の結果は組織によって異なるとスヴェルドラブ氏は述べた。ある企業では、レガシーアプリケーションを実行するには特定のバージョンのJavaが必要だが、特定のコンピュータでのみ必要だと判断するかもしれない。また、Javaを必要とする特定のウェブサイトが最新バージョンのソフトウェアで動作することを発見する企業もあれば、サーバー上でのみJavaが必要で、デスクトップでは不要だと判断する企業もあるだろう、とスヴェルドラブ氏は述べた。
スヴェルドラブ氏は、個々のJavaのニーズに関わらず、組織はJava導入ポリシーを作成し、それを徹底させるべきだと述べた。Javaを導入しないというポリシーであれば、ツールを使ってJavaの実行をブロックすべきだ。また、特定のマシンでのみJavaが必要だと判断した場合は、他のすべてのマシンからJavaを削除すべきだと同氏は述べた。
ハッカーが Java インストールを攻撃する最も一般的な方法は、Web サイトにホストされているエクスプロイトを使用して、ソフトウェアの Web ブラウザ プラグインを経由することです。
Bit9のレポートには、企業のエンドポイントで特定されたJavaインストールのうち、それらのコンピュータのWebブラウザからアクセス可能なJavaインストールの数に関する具体的な情報は含まれていませんでした。しかし、サンプル調査されたエンドポイントシステムの大部分はデスクトップとラップトップであったため、これらのJavaインストールがWeb攻撃にさらされる可能性は高いとスヴェルドラブ氏は述べています。
2013 年 7 月 18 日午前 11 時 50 分 (東部標準時) に更新され、第 9 段落のパーセンテージの誤りが修正されました。