Oracle Java SE の HotSpot VM に起因する任意コード実行の脆弱性(Scan Tech Report)
Oracle Java SE の HotSpot VM には、Java バイトコードを取り扱う際にフィールド型を誤って処理してしまう脆弱性が存在します。
脆弱性と脅威
1.概要 Oracle Java SE の HotSpot VM には、Java バイトコードを取り扱う際にフィールド型を誤って処理してしまう脆弱性が存在します。 ユーザが悪質な Java アプレットを使用する Web ページを閲覧した場合、リモートの第三者によってシステム上で不正な操作が実行される可能性があります。 既にこの脆弱性を悪用する攻撃およびエクスプロイトキットが確認されており、攻撃を受ける可能性が高いことが考えられるため、影響を受けるバージョンのJava SE を利用するユーザは可能な限り以下に記載する対策を実施することを推奨します。
3.影響を受けるソフトウェア Java SE (SDK and JRE) 1.4.2_37 以前 Java SE (JDK and JRE) 5 Update 35 以前 Java SE (JDK and JRE) 6 Update 32 以前 Java SE (JDK and JRE) 7 Update 4 以前
※1 影響を受けるバージョンの Java SE が含まれる Mac OS や Linux、UNIX においても、この脆弱性の影響を受ける可能性があります。
4.解説 HotSpot VM は、バイトコードの実行環境を提供する Java 仮想マシン (JVM) のエンジンであり、OpenJDK の基盤ともなっています。
Oracle Java SE の HotSpot VM には、Java バイトコードを取り扱う際に、静的変数とインスタンス変数を適切に区別せず誤って処理してしまう不備があります。 このため、GETFIELD/PUTFIELD/GETSTATIC/PUTSTATIC 命令を介して当該変数が繰り返し操作された場合に、不適切な変数を参照してしまうことによって、不正な Java アプリケーションをサンドボックスによるセキュリティ制限を適用することなく実行してしまう脆弱性が存在します。
この脆弱性を利用することで、リモートの攻撃者は Web ブラウザを実行するユーザの権限で任意のコード実行が可能となります。
5.対策 以下の Web サイトを参考に、下記の Java SE (SDK and JRE/JDK and JRE) バージョンを入手しアップデートすることで、この脆弱性を解消することが可能です。
* Java SE (SDK and JRE) 1.4.2_38 以降 ※2 * Java SE (JDK and JRE) 5 Update 36 以降 ※2 * Java SE (JDK and JRE) 6 Update 33 以降 * Java SE (JDK and JRE) 7 Update 5 以降