連鎖型攻撃によるウイルス感染が流行している。ユーザーが,悪意あるコードを含んだWebページにアクセスすることで,連鎖的に攻撃を受ける。さらに複数のウイルスがインストールされてしまう。
その感染経路の多くはSQLインジェクションによってコンテンツを改ざんされた“正当な”Webサイトである。今年3月に続き,7月にも国内で多くのWebサイトが改ざんされ,連鎖型攻撃の踏み台にされた。
この攻撃がやっかいなのは,踏み台を介して誘導される悪質なサイトへのアクセス遮断が難しい点,そして攻撃でインストールされる一連のウイルス群が,ウイルス対策ソフトでは駆除が難しい点である。
「隠れ蓑」で延命する攻撃サーバー
連鎖型攻撃はウイルス感染までに複数のステップを踏む。最近,よく見かけるパターンを端的に説明すると,次のようなステップになる(図1)。
・踏み台サイトに埋め込まれたスクリプトで攻撃サイトに誘導(図1 1,2)
・OSやアプリケーションのぜい弱性を悪用され権限を奪われる(同3)
・ダウンローダ型プログラム,トロイの木馬のインストール,スパイウエアのダウンロード(同4~6)
従来は悪性サイトが発見されると,Googleなどの検索エンジンやフィッシング対策ソフトなどによって対策が講じられた。ところが最近は,攻撃者はボットネットが利用するDNS Fast Fluxingという手法を使う。これは,最終的にユーザーに不正プログラムをダウンロードさせるサーバーの大元の位置を隠す手法。具体的には,トロイの木馬を埋め込んだ多数のボットをプロキシ・サーバーとして使う。このボットのIPアドレスを頻繁に変え,攻撃用サーバーを見付けにくくしているため,不正サイトへのアクセス抑制は一筋縄ではいかない。
ウイルス対策ソフトでも駆除は困難
攻撃ステップの(4)~(6)では,複数のトロイの木馬やバックドアがインストールされる。問題は,インストールされるウイルス群の駆除が非常に困難なことである。筆者のラボ環境で試しても,パソコンに感染したウイルス群は,手動による削除でなければ駆除できなかった。
主な要因は,これらのウイルスが複雑に連鎖して動作する点にある。ウイルス同士がお互いのプロセスをチェックし合いながら動作しているために,プログラムの直接削除やプロセスの停止が困難になっている。
従来は有効な手段だったセーフ・モードでの削除も効果がなく,ウイルスのプロセスを確認しながら削除しなければならない。ウイルス・スキャンの実行を妨害するように対策ソフトの動作まで制御するため,単純にウイルス対策ソフトでの駆除もできない。
中でもやっかいなのが,隠れプロセスだ。一見,セーフ・モードで不正プロセスを停止したつもりでも,それは「おとり」に過ぎない。隠れプロセスが動作し,バックドアなどをロックしているために,単純なファイル削除では核となっているプログラムを削除できない。隠れプロセスの確認は通常のWindows標準のタスク マネージャや,その強化版として無償配布されているプロセスエクスプローラでは確認できない。そのため,Security Task Managerのようなツールを使う必要がある(写真1)。