Neosploit の裏に潜む悪漢
過去数年間に、シマンテックは悪用ツールキットの使用が大幅に増加したことを確認しました。いくつものキットが現れては消えていきましたが、一部は生き残っています。Neosploit もそのひとつです。今回は、JAR ファイルを利用して悪質なファイルを拡散するという、Neosploit ツールキットに固有の機能を取り上げます。
Neosploit をシマンテックが初めて確認したのは、2007 年 3 月のことでした。それ以来、このツールキットは進化を続け、今までに登場したなかで「最も優秀な」悪用ツールキットのひとつに数えられています。この悪名高いツールキットの開発は終了したというニュースが流れたにもかかわらず、悪質なユーザーたちは、Neosploit を使い続けています。
Neosploit は、クライアント側ブラウザのさまざまな脆弱性を悪用します。おおまかに言うと、Neosploit の悪質なユーザーは不明瞭化した JavaScript を正規のサイトに埋め込みます。侵入を受けた Web サイトに無警戒なユーザーがアクセスすると、知らないうちに感染してしまいます。
Neosploit は、不明瞭化にさまざまな技術を駆使しています。なかでも最も広く使われているのが(今でも確認されています)、「Twitter トレンド」の URL 生成トリックです。実行されると、この不明瞭化スクリプトは自身の不明瞭化を解除し、Twitter トレンドの内容を取得します。次に、そのトレンドのデータを利用して動的なURL を構築します。この URL は、Neosploit のサーバーにリンクしています。スクリプトはまず、Twitter からのデータを利用して shiftIndex 変数を生成します。後からこの同じ変数を使って、URL を構築します。下の図 1.1 を見ると、このスクリプトが Twitter トレンドを利用して shiftIndex 変数を生成する方法がわかります。
図 1.1: 不明瞭化を解除するスクリプトが Twitter トレンドを利用する
shiftIndex 変数が 0 より大きいと評価されると、事前に定義されている一連の配列とある種の数学的計算を使って URL を構築するループが開始されます。Neosploit サーバーにリンクする最終的 なURL は、図 1.2 に示したように、r という変数にあります。
図 1.2: 不明瞭化を解除するスクリプトが URL を構築する
次にブラウザは、この悪用の元である Neosploit サーバーにアクセスします。悪用は主として、PDF または JAR ファイルの形で行われます。JAR ファイルに仕掛けられた後続の手口によって、マルウェアのダウンロード元が隠蔽されます。悪質な URL は、JAR アーカイブの MANIFEST ファイルで、Specification-Vendor 属性のもとに隠蔽されます。図 1.3 は、Specification-Vendor 属性のデータを示したものです。
図 1.3: MANIFEST ファイル
JAR ファイルが実行されると、getResources 関数と getvalue 関数を使って、MANIFEST ファイルから Specification-Vendor 属性がフェッチされます。正規の Specification-Vendor 属性は、拡張仕様を維持管理している組織を識別する文字列です。この場合、Neosploit がこの属性を悪用していることは明らかです。図 1.4 は、MANIFEST ファイルから Specification-Vendor 属性の値をフェッチする Java コードです。
図 1.4: MANIFEST ファイルからデータをフェッチするコード
デコードされると、MANIFEST ファイルから抽出された文字列によって URL が生成され、%temp% ディレクトリにファイルがダウンロードされます。図 1.5 は、デコードされた URL です。
図 1.5: デコードされた URL
%temp ディレクトリにダウンロードされるファイルは、「msitcm.cpl」として識別されています。図 1.6 は、このファイルを %temp% ディレクトリに保存する Java コードです。
図 1.6: Java コード
この Java コードは後から、.CPL を regsvr32.exe を使って登録します。図 1.7 は、ダウンロードした .CPL ファイルを regsvr32.exe で登録するJava コードです。
図 1.7: msitcm.cpl を実行する Java コード
msitcm.cpl は、他の悪質なファイルをコンピュータにダウンロードします。ダウンロードされるファイルは、偽のウイルス対策アプリケーションをインストールするのが一般的です。
図 1.8: 偽のウイルス対策アプリケーション
シマンテックのお客様はこの攻撃から保護されていますので、ご安心ください。シマンテックの IPS エンジンとウイルス対策エンジンはどちらも、送信された要求と、ダウンロードされたファイルを汎用的に検出します。
詳しくは、シマンテックの最新の「Attack Toolkits report(攻撃ツールキットに関するレポート)」を参照してください。
* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/ja にアクセスしてください。