Oracle Java SE の Beans コンポーネントに起因するサンドボックスによるセキュリティ制限回避の脆弱性(Scan Tech Report) | ScanNetSecurity[国内最大級のサイバーセキュリティ専門ポータルサイト]
2018.07.23(月)

Oracle Java SE の Beans コンポーネントに起因するサンドボックスによるセキュリティ制限回避の脆弱性(Scan Tech Report)

脆弱性と脅威 エクスプロイト

1.概要
Oracle Java SE にサンドボックスによるセキュリティ制限を回避して、任意のコードが実行可能な脆弱性が報告されました。
ユーザが悪質な Java アプレットを使用する Web ページを閲覧した場合、リモートの第三者によってシステム上で不正な操作が実行される可能性があります。
この脆弱性は、FireEye が 2012/8/26 に中国の Web サーバから 0-Day エクスプロイトを悪用した標的型攻撃が行われているとブログで明らかにし、Oracle が 2012/8/30 に脆弱性を解消する Java SE バージョンを定例外リリースした問題になります。
既にこの脆弱性を悪用する攻撃およびエクスプロイトキットが確認されており、攻撃を受ける可能性が高いことが考えられるため、影響を受けるバージョンのJava SE を利用するユーザは可能な限り以下に記載する対策を実施することを推奨します。


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


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

※1 影響を受けるバージョンの Java SE が含まれる Mac OS や Linux、UNIX においても、この脆弱性の影響を受ける可能性があります。


4.解説
Oracle (Sun) Java SE 7 の Beans コンポーネントでは、Class オブジェクトを取得する findClass メソッド (com.sun.beans.finder.ClassFinder) および public クラスでアクセス可能な public メソッドを取得する findMethod メソッド (com.sun.beans.finder.MethodFinder) が新しく実装されています。

Java SE 7 の findClass メソッドには、リフレクションを利用する際に forName メソッド (java.lang.Class) を不適切に利用可能な不備があるため、本来アクセスすることができない、sun.awt.SunToolkit クラスを参照可能な問題が存在します。
また、findMethod メソッドには getMethod メソッド(java.lang.Class) をリフレクションとして利用することで、セキュリティチェックを回避し、getField メソッド (sun.awt.SunToolkit) を呼び出し可能な問題が存在します。

これら 2 つの問題を組み合わせて悪用することで、リモートの攻撃者は、サンドボックスによるセキュリティ制限を実装する SecurityManager を無効にし、Web ブラウザを実行するユーザの権限で任意のコード実行が可能となります。

なお、この脆弱性を悪用するエクスプロイトキット (BlackHole Exploit Kit など) や攻撃サイトが多数確認されていることが報告されています。
脆弱性の悪用は容易であり、攻撃活動がさらに拡大する可能性が考えられるため、速やかに解消バージョンの Java SE 7 にアップデートすることを推奨します。

Oracle Java 7の脆弱性を狙った攻撃について
http://blog.f-secure.jp/archives/50677218.html
JRE / JDK バージョン7のゼロデイ脆弱性を悪用する攻撃検知状況
https://www-304.ibm.com/connections/blogs/tokyo-soc/entry/java_0day_20120830
Java の新しいゼロデイ脆弱性 (CVE-2012-4681)
http://www.symantec.com/connect/blogs/java-cve-2012-4681
JRE 1.7に存在するゼロデイ脆弱性を狙った攻撃、バックドア型不正プログラムをもたらす
http://blog.trendmicro.co.jp/archives/5850
猛威を振る Java ゼロデイ攻撃コード
http://www.sophos.com/ja-jp/press-office/press-releases/2012/08/jp-unpatched-java.aspx

また、この脆弱性は、Security Explorations が 2012/4 に Oracle に報告した 19 の脆弱性の内の 2 つに類似しており、当該脆弱性は、2012/10 のOracle の定例パッチ (Critical Patch Updates) で解消予定であったと示唆しています。

SE-2012-01 Press Info
http://www.security-explorations.com/en/SE-2012-01-press.html
[SE-2012-01] information regarding recently discovered Java 7 attack
http://seclists.org/fulldisclosure/2012/Aug/336


5.対策
以下の Web サイトより、Java SE (JDK and JRE) 7 Update 7 以降を入手しアップデートすることで、この脆弱性を解消することが可能です。

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

Update Release Notes Java SE Development Kit 7, Update 7 (JDK 7u7)
http://www.oracle.com/technetwork/java/javase/7u7-relnotes-1835816.html

あるいは、以下の Web サイトを参考に、システムで利用する各 Web ブラウザの Java プラグインを無効にすることで、この脆弱性を回避することが可能です。

* Apple Safari
https://support.apple.com/kb/HT5241?viewlocale=ja_JP
* Google Chrome
https://support.google.com/chrome/bin/answer.py?hl=ja&answer=142064
* Microsoft Internet Explorer
http://support.microsoft.com/kb/2751647/ja
* Mozilla Firefox
http://support.mozilla.org/ja/kb/How%20to%20turn%20off%20Java%20applets

また、この脆弱性を解消する Java SE 7 Update 7 では、同様に Beans コンポーネントに起因して、サンドボックスによるセキュリティ制限を回避可能な 2 つの脆弱性 (CVE-2012-3136/CVE-2012-1682) についても解消しています。
詳細につきましては、関連情報にある Oracle より提供されるセキュリティアドバイザリを参照下さい。


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

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

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

Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html

《吉澤 亨史( Kouji Yoshizawa )》

関連記事

Scan PREMIUM 会員限定記事

もっと見る

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

カテゴリ別新着記事

★★Scan PREMIUM 会員限定コンテンツにフルアクセスが可能となります★★
<b>★★Scan PREMIUM 会員限定コンテンツにフルアクセスが可能となります★★</b>

経営課題としてサイバーセキュリティに取り組む情報システム部門や、研究・開発・経営企画に携わる方へ向けた、創刊19年のセキュリティ情報サービス Scan PREMIUM を、貴社の事業リスク低減のためにご活用ください。

×