Microsoft Internet Explorer の SetMouseCapture の取り扱いに起因する 0-Day エクスプロイト(Scan Tech Report)
Microsoft Internet Explorer (IE) の HTML レンダリングエンジンに解放済みメモリを使用してしてしまう 0-Day の脆弱性が報告されました。ユーザが悪質な Web ページを閲覧した場合に、リモートの第三者によってシステム上で不正な操作が実行される可能性があります。
脆弱性と脅威
エクスプロイト
Microsoft Internet Explorer (IE) の HTML レンダリングエンジンに解放済みメモリを使用してしてしまう 0-Day の脆弱性が報告されました。
ユーザが悪質な Web ページを閲覧した場合に、リモートの第三者によってシステム上で不正な操作が実行される可能性があります。
IE 8 および IE 9 に対する攻撃が確認されており、攻撃を受ける可能性が高いことが考えられるため、パッチ未適用の IE を利用するユーザは可能な限り以下に記載する対策を実施することを推奨します。
2.深刻度(CVSS)
9.3
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2013-3893&vector=%28AV%3AN/AC%3AM/Au%3AN/C%3AC/I%3AC/A%3AC%29
3.影響を受けるソフトウェア ※
Microsoft Internet Explorer 6
Microsoft Internet Explorer 7
Microsoft Internet Explorer 8
Microsoft Internet Explorer 9
Microsoft Internet Explorer 10
Microsoft Internet Explorer 11 ※1
※1 Windows 8.1 Preview および Windows Server 2012 R2 Preview 上で動作する IE 11 のみが脆弱性の影響を受けます。
4.解説
Microsoft Internet Explorer (IE) の Microsoft HTML Viewer (mshtml.dll) は、HTML, Cascading Style Sheets (CSS), Document Object Model (DOM) などをパースおよびレンダリングする機能を提供するライブラリです。
IE の mshtml.dll には、マウスイベント (onlosecapture) を取り扱う際に、CDoc::SetMouseCapture が CTreeNode オブジェクトのポインタを適切に削除せず解放してしまう不備があります。
このため、複数のツリーノードから setCapture メソッドを呼び出し、onlosecapture イベントを発生させる不正な Web ページをレンダリングした
場合、CElement::Doc() が、当該ポインタを介して解放済みの CTreeNode オブジェクトが存在したメモリ領域を参照してしまう脆弱性が存在します。
この脆弱性を利用することで、リモートの攻撃者は、IE を実行するユーザの権限で任意のコード実行が可能となります。
なお、この脆弱性は、IE 8/9 を狙った水飲み場型攻撃 (Watering Hole Attack) として利用され、ユーザが特定の目的で集まる中規模の Web サイトに脆弱性を悪用するコードが埋め込まれていたとラック社は報告しています。
日本における水飲み場型攻撃に関する注意喚起:
http://www.lac.co.jp/security/alert/2013/10/09_alert_01.html
また、FireEye 社は、この脆弱性は日本をターゲットとした 0-Day エクスプロイトであるとして "Operation DeputyDog" というコードネームを名付けています。
Operation DeputyDog: Zero-Day (CVE-2013-3893) Attack Against Japanese Targets:
http://www.fireeye.com/blog/technical/cyber-exploits/2013/09/operation-deputydog-zero-day-cve-2013-3893-attack-against-japanese-targets.html
5.対策
以下の Web サイトを参考に、それぞれの Windows OS の IE バージョンに対応するパッチ (MS13-080) を入手し適用することで、この脆弱性を解消することが可能です。
または、Windows Update/Microsoft Update を行うことでも同様に脆弱性を解消することが可能です。
MS13-080:
http://technet.microsoft.com/security/bulletin/MS13-080
あるいは、下記のいずれかの回避策を実施することで、この脆弱性による影響を回避または緩和することが可能です。
・Microsoft Fix it (CVE-2013-3893 MSHTML Shim) を適用する ※2
・Mozilla Firefox, Google Chrome などの他のブラウザを利用する
・IE のインターネットおよびローカルイントラネットゾーンにおける ActiveX コントロールまたはアクティブスクリプトの実行を変更する
・Enhanced Mitigation Experience Toolkit (EMET) を使用する ※3
※2 Microsoft Fix it 51001:
https://support.microsoft.com/kb/2887505/ja
※3 Enhanced Mitigation Experience Toolkit 4.0:
http://www.microsoft.com/en-us/download/details.aspx?id=39273
また、MS13-080 では、他にもこの脆弱性とは異なる 0-Day エクスプロイトに悪用された脆弱性 (CVE-2013-3897) 等も修正しています。
詳細については、関連情報の Microsoft 社が提供するセキュリティア情報等を参照ください。
6.ソースコード
(Web非公開)
(執筆:株式会社ラック サイバー脅威分析センター)
※Web非公開該当コンテンツ閲覧をご希望の方はScan Tech Reportにご登録(有料)下さい。
Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html
《吉澤 亨史( Kouji Yoshizawa )》