Oracle Java SE 7 のリフレクション処理に起因する Type Confusion の脆弱性(Scan Tech Report) | ScanNetSecurity
2024.03.29(金)

Oracle Java SE 7 のリフレクション処理に起因する Type Confusion の脆弱性(Scan Tech Report)

Oracle Java SE 7 には、リフレクション処理を行う際にデータ型を誤って取り扱う脆弱性が存在します。

脆弱性と脅威 エクスプロイト
1.概要
Oracle Java SE 7 には、リフレクション処理を行う際にデータ型を誤って取り扱う脆弱性が存在します。
ユーザが悪質な Java アプリケーションを使用する Web ページを閲覧した場合、リモートの第三者によってサンドボックスによるセキュリティ制限を回避して、システム上で不正な操作が実行される可能性があります。
既にこの脆弱性を悪用する攻撃が確認されており、攻撃を受ける可能性が高いことが考えられるため、影響を受けるバージョンの Java SE 7 を利用するユーザは可能な限り以下に記載する対策を実施することを推奨します。


2.深刻度(CVSS)
4.3
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2013-2423&vector=%28AV%3AN/AC%3AM/Au%3AN/C%3AN/I%3AP/A%3AN%29


3.影響を受けるソフトウェア ※
Java SE (JDK and JRE) 7 Update 17 以前

※1 OpenJDK 7 も、この脆弱性の影響を受けることが報告されています。
また、影響を受けるバージョンの Java SE パッケージが含まれる Linux や UNIX においても、この脆弱性の影響を受ける可能性があります。


4.解説
Oracle Java SE 7 には、java.lang.invoke.MethodHandles クラスにおいて、静的クラスの final フィールドを変更する際のアクセス制限の実装に不備があります。
このため、リフレクション機能を利用してフィールドデータを不正に操作することで、double 型のデータと int 型のデータを適切に区別せず誤って処理(Type Confusion) してしまう脆弱性が存在します。

この脆弱性を利用することで、リモートの攻撃者は SecurityManager を無効にし、Java SE を実行するユーザの権限で任意のコード実行が可能となります。

なお、既にこの脆弱性を悪用するエクスプロイトキット (Cool Exploit Kit や Redkit など) が複数確認されていることが Symantec 社などによって報告されています。

Java の脆弱性 CVE-2013-2432 の悪用について
http://www.symantec.com/connect/blogs/java-cve-2013-2432
Javaの脆弱性CVE-2013-2423に対するエクスプロイトが悪用される
http://blog.f-secure.jp/archives/50700195.html

また、Immunity 社によれば、Java SE 7 Update 17 以前には、JNLP ファイルを処理する際の performSSVValidation() メソッドにおけるパラメータのチェックに不備※2 があるため、上記の問題と組み合わせて悪用することで、Java セキュリティ警告ダイアログの表示を出力することなく不正なアプレットを実行可能であると報告しています。

Yet Another Java Security Warning Bypass
http://immunityproducts.blogspot.jp/2013/04/yet-another-java-security-warning-bypass.html


5.対策
以下の Web サイトより、Java SE (JDK and JRE) 7 Update 21 以降を入手しアップデートすることで、この脆弱性を解消することが可能です。
※2 の問題についても、当該バージョンで修正されています。

Java のダウンロード
http://java.com/ja/download/

あるいは、以下の Web サイトを参考に、システムで利用する各ブラウザの Java プラグインを無効にする、または Java SE 7 Update 10 にアップデート後、Java コントロールパネルからブラウザにおける Java プラグインを無効にすることで、この脆弱性を回避することが可能です。

WebブラウザでJavaを無効にするにはどうすればよいですか。
http://www.java.com/ja/download/help/disable_browser.xml


6.ソースコード
(Web非公開)

(執筆:株式会社ラック サイバー脅威分析センター

※Web非公開該当コンテンツ閲覧をご希望の方はScan Tech Reportにご登録(有料)下さい。

Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html
《吉澤 亨史( Kouji Yoshizawa )》

関連記事

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×