Endpoint Protection

 View Only

BlackHole の原理 

Feb 18, 2011 07:00 AM

シマンテックは、強力な悪用機能を備えた BlackHole ツールキットの監視を続けています。BlackHole は野火のように広がりつつあり、今や世界で最も流行している悪用ツールキットです。感染ユーザー数の点では Neosploit や Phoenix といった同類にもひけをとりません。



最近では、BlackHole は明らかに、ハッカーの間で最もよく使われるツールキットとなっています。この事実は、次に示す IPS のグラフにも端的に表れており、毎日 100,000 件以上の悪質な攻撃が報告されています。

 

BlackHole 悪用ツールキットの全容の解析

 


•    悪質な iframe が埋め込まれた正規のサイトにアクセスすると、ユーザーはこの iframe によって BlackHole 悪用ツールキットのサーバーにリダイレクトされます。次の図に、不明瞭化された iframe スクリプトを示します。


このスクリプトをデコードすると、次のようになります。



•    BlackHole は、以下に述べる手法で悪用を不明瞭化します。ページの <textarea> 内に大きな配列が含まれています。この配列がデコードされ、PDF、JAVA、HCP、MDAC などでよく知られている脆弱性のさまざまな悪用につながります。


次の図は、配列をデコードするコードです。変数 ivtl には、.match() メソッドの後に url(data:,va という文字列があります。wjw = g["e"+ivtl.substr(0,2)+"l"]; という String が eval ivtl.substr(0,2) を指定し、va に評価されます。デコードされたスクリプトを含む s という String が wjw に渡されて実行されます。


•    ページには、ユーザーをリダイレクトして悪質な jar ファイルをダウンロードさせるコードが含まれています。jar ファイル内にあるクラスの 1 つが、スクリプトで渡された値を抽出し、それをデコードして URL に展開します。


 
jar ファイル内にあるコードは、次の図のとおりです。
 


 

デコードされた文字列には d.php?f=[0-9]{1,2}&e=[0-9]{1,2} というパターンが含まれ、この URL を利用して他の悪質なダウンロードが実行されます。


•    URL でダウンロードされるのは Trojan.Carberp です。これは、検出を回避するその巧妙な手口から ZeuS に比肩される高性能なトロイの木馬です。


•    Trojan.Carberp は、一意の ID をコマンド& コントロール(C&C)サーバーに送信します。この ID は、Trojan.Carberp と C&C サーバーの間でトランザクションが発生するたびに使われます。URL には /set/task.htmlという部分が含まれます。


•    次に、Trojan.Carberp は侵入先のコンピュータで実行されている全プロセスを C&C サーバーに送信します。このときの URL に含まれるパターンは set/first.htmlで、送信されるデータには id=(/set/task.html で送信される一意の番号)&os=(OS の名前とバージョン)&plist=(実行中の全プロセスのリスト) というパターンが含まれます。


•    Trojan.Carberp は次の 3 つのモジュールをダウンロードします。


1) stopav.plug - 侵入先のコンピュータにインストールされているウイルス対策ソフトウェアを無効化するモジュール。
2) miniav.plug - Zeus など他のトロイの木馬が存在するかどうかを確認し、見つかった場合には競争相手となるそのトロイの木馬を削除する。
3) passw.plug - WININET.dll と USER32.dll の多くの関数のエクスポートテーブルをフックし、入力されたユーザー名とパスワードのすべての組み合わせと、アクセスした URL をログに記録する。

•    C&C サーバーは、Trojan.Carberp に multidownload コマンドを送信します。


 
•    ダウンロードされる最初のファイル(1.exe)は Hiloti というトロイの木馬(別名 Trojan.Zefarch)であり、これが無料のファイルホスティングサイトに要求を送信します。このドメインを表すパターンの 1 つが [a-z0-9]{12}.weirden.com で、要求ページでは /get2.php?c=[A-Z]{8}&d=<長い 16 進数文字列> というパターンが使われます。サーバーは、要求されたファイルを取得しようとして常に「File Not Found」と応答します。



•    ダウンロードされる 2 番目のファイル(2.exe)は、偽ウイルス対策ソフトウェアです。  


シマンテックのお客様はこの攻撃から保護されていますので、ご安心ください。シマンテックの IPS エンジンとウイルス対策エンジンはどちらも、BlackHole によるトラフィック、悪用、トロイの木馬、悪質な偽ウイルス対策ソフトウェアを汎用的に検出します。現在、クライムウェアの世界では十分に成熟したビジネスモデルが運用されており、BlackHole 悪用ツールキットはこのビジネスモデルの発達と蔓延を示す恰好な一例です。新しい悪用のリストを次々と増やし続け、不明瞭化の手口を絶えず変えていくことを考えると、悪用ツールキットはセキュリティベンダーにとって大きな脅威となります。以上のことから、シマンテックは読者の皆さまに、すべてのセキュリティパッチと定義ファイルを定期的にインストールするよう強く推奨しています。詳しくは、シマンテックの最新の「Attack Toolkits report(攻撃ツールキットに関するレポート)」を参照してください。

備考: このブログの共同執筆者である Parveen Vashishtha 氏に感謝します。

 

* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/ja にアクセスしてください。

Statistics
0 Favorited
0 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Related Entries and Links

No Related Resource entered.