この調査にご協力いただいた Andrea Lelli 氏に感謝します。
Microsoft Internet Explorer の Same ID プロパティに存在するリモートコード実行の脆弱性(CVE-2012-1875)が悪用されているのは、先日のブログで取り上げたとおりですが、Microsoft XML コアサービスに存在するリモートコード実行の脆弱性(CVE-2012-1889)も依然として悪用されていることを、シマンテックは確認しています。これは、Internet Explorer で使われている MSXML オブジェクトの一部の関数が関係する脆弱性です。この問題のために、初期化されていないメモリ領域にアクセスして任意のコードを実行することが可能になります。
確認されているのは、悪質な iframe を正規の Web サイトにインジェクトしてマルウェアを拡散しようとする試みです。この iframe は、悪用コードを Web ブラウザにロードして、脆弱な状態を引き起こします。図 1 に、正規の Web サイトにインジェクトされ、マルウェアの拡散に使われた iframe の例を挙げます。
図 1: 悪質な iframe の例
CVE-2012-1875 に対して使われた悪用コードとまったく同様に、この悪用も埋め込まれた SWF(Flash)ファイルを利用します。SWF ファイルには、ヒープスプレーを実行し、シェルコードの設定を行う機能があります。図 2 は、悪質な SWF ファイルを利用する HTML コードの例です。
図 2: 悪質な SWF ファイルを参照する HTML コード
この悪用も、Windows の複数のバージョンと言語に対応しています。ヒープスプレーとシェルコードは、Windows のバージョンと言語の組み合わせに従ってカスタマイズされます。 図 3 は、このカスタマイズを受け持つ ActionScript の抜粋です。
図 3: OS と言語のカスタマイズコードを示す ActionScript の抜粋
この脆弱性が利用されると、実行がシェルコードに渡されます。シェルコードは、暗号化されたペイロードを URL からダウンロードし、Temporary Internet Files フォルダに保存するように設計されています。
この攻撃者が採用している暗号化アルゴリズムはほとんど保護の機能をはたさず、0x95 の鍵を用いる単純な XOR 演算だけでペイロードが復号されます。復号されたペイロードは、同じフォルダに書き込まれて実行されます。このマルウェアは、ほかにも以下の名前のファイルを投下します。
- %Temp%\happy.exe
- %Temp%\happy.dll
- %Temp%\bypassuac.exe
- %Temp%\bypassuac.dll
- %Temp%\cryptbase.dll
ちなみに、この攻撃者には弊社のノートンウイルス対策製品をご愛顧いただいているようです。図 4 に挙げたバイナリファイルに、そのようなメッセージが書き込まれていました。
図 4: 攻撃者からの応援メッセージ
シマンテック製品はこのマルウェアを Trojan Horse として検出し、Web Attack: MSIE MSXML CVE-2012-1889 および Web Attack: MSIE MSXML CVE-2012-1889 2 というシグネチャを使って IPS テクノロジによって遮断します。それを知ったうえでもなお、犯人はシマンテックに変わらぬ声援を送ってくれるものでしょうか。
* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/ja にアクセスしてください。