[画像のクリックで拡大表示]

 今回は最近話題になった攻撃ツール「Blackhole」についてのブログを中心に紹介する。米マイクロソフトの「Microsoft XML Core Services(MSXML)」に存在する脆弱性「CVE-2012-1889」を狙う攻撃ツールである。6月末に英ソフォスが、ブログで報告した。ソフォスは、攻撃ツールがさらに新たな脆弱性を狙って迅速にアップデートされることを懸念している。

 新たな脆弱性を狙う攻撃ツールの登場は、より多くのユーザーに感染が広がる可能性につながる。それがゼロデイ脆弱性ならなおさらだ。今回CVE-2012-1889のセキュリティアドバイザリーが公開されて数日後には、オープンソースの脆弱性検証ツール「Metasploit Framework」に同脆弱性を利用するモジュールが追加された。

Metasploit Frameworkに追加されたモジュール

 さらに1週間以内に、Metasploitで公開されたものとよく似たCVE-2012-1889向けの攻撃コードが、Blackholeをホスティングするサイトのランディングページに見つかった。

 このコードは、現在Blackholeが対象にしているさまざまな他の攻撃コードと組み合わされている。ランディングページ自体はBlackholeによくある方法で不明瞭化され、検出をすり抜けるための最新のアンチエミュレーショントリックが使われている。

難読化されたJavaScriptのスニペット

 コードの難読化を解除すると、Blackholeと関連のある脆弱性を利用するいつもの関数がはっきり確認できる。しかしこのページ内にはCVE-2012-1889を狙う新しい関数「spl7」があった。spl7はヒープスプレー手法を利用して脆弱性を突く前にシェルコードを設定し、実行をシェルコードに渡す。

 シェルコードは非常に分かりやすく、ペイロード(dll)をリモートサーバーからダウンロードして、tempフォルダーに書き込もうとする。

シェルコードの一部

 不思議なことに、このブログ執筆時点で、CVE-2012-1889を狙った他のBlackholeサイトは確認されていない。正直なところ、ソフォスは一つめのサイトを見つけたとき、すべてとは言わないまでも、かなりの割合のBlackholeサイトが数日以内にこの攻撃コードを使うようになると考えていたという。

 この新しい攻撃コードが広まらない理由については、信頼性が低いのか、高価な新版攻撃ツールの専用機能なのか、ただ想像するしかない。