第 7 章 評価
7.1 検知精度評価
本手法の有効性を示すために,マルウェアに感染したホストが発生させたネットワークト ラフィックを収集し,検知率を評価した.第3章の調査により,マルウェアの変化に伴って1) 亜種の大量発生によるトラフィックパターンの頻繁な変更,2)ネットワークセキュリティ監 視を回避するための傾向変化という2点が明らかになっている.この2点に対向するために,
本論文では変数を用いて複雑な検知を実現するネットワークセキュリティ監視を実装してお り,この有効性を証明するために検知精度の評価を実施した.
本論文では,ルール作成用の通信データと評価用のデータの2種類を用意して,評価を実 施した.現在,マルウェアによる感染活動は世界的に波及しているが,筆者による解析環境で すべてのマルウェアの活動を網羅できているとは言い難い.そのため,ルール作成用の通信 データと評価用のデータをそれぞれ異なる方法で収集することで,本手法が多くのマルウェ アに対して有効であることを示す.また,本手法が亜種への耐性があるルールを作成できる ことを示すために,ルール作成用のデータの収集と評価用のデータの収集は,期間をあけて
実施している.これによって,本手法によって作成されたルールは出現した直後のマルウェ アだけではなく,一定期間内に発生した新しいマルウェアにも有効であることを示す.
また,多様化しているマルウェアの感染経路に対応するため,本論文では自律的に通信を 開始して攻撃先ホストへの接続を試みる能動攻撃型マルウェアと,ユーザ自身の行動が攻撃 の引き金となってしまう受動攻撃型マルウェアの2種類に関連する通信を評価した.第3章 で示したように,能動攻撃型マルウェアと受動感染型マルウェアでは,感染経路だけではな く感染後の活動にも大きな違いが見られる.そのため,本論文ではハニーポットによって収 集されたマルウェアと悪意のあるウェブサイトの閲覧時に収集したマルウェアの両者に対す る有効性を示すことで,多くのマルウェアに対応できる本手法の柔軟性を示す.
7.1.1 評価用通信データの準備
能動攻撃型マルウェアの通信データ収集
False Negativeの発生率を確認するために,筆者らがハニーポットから収集したマルウェア
を利用した.ハニーポットは2008年6月から同年10月にかけてNepenthes[16]を運用し,936 件のマルウェアを収集している.Nepenthesは攻撃コードを受信した場合に,攻撃対象となっ たソフトウェアの脆弱性を模倣してプログラムを取得する.よって,ハニーポットによって 収集されたプログラムは悪性であると見なせるため,これらを実行した際に発生した通信に は検知するべきデータが含まれていると言える.本評価では悪性プログラムを自動的に実行 して得られた通信データに対して,本手法が活動の見逃しが発生しないかを調査した.
ハニーポットによって収集したマルウェアを2008年11月1日から同月6日の間に実験環 境で実行し,False Negative評価用の通信データを取得した.実験環境は第3.1節と同様に VirtualBox 2.0[17]上で修正パッチを適用していないWindows XP ProfessionalをゲストOSと して動作させた.ゲストOSはNetwork Address Port Translation(NAPT)を用いて構成された ネットワークに接続しており,外部からの接続要求はできない.また,外部への被害防止のた め外向きのTCP/UDPポート25,135,137,139,445,1433,1434をそれぞれ遮断し,転 送速度を制限した.収集されたマルウェアは起動直後のゲストOS上で実行し,その後1時 間かけて通信データを収集した.“Improving the Efficiency of Dynamic Malware Analysis”[72]
によれば,マルウェアの活動は起動後100秒で主な特徴的な動作が観測されるという.その ため,評価に用いた通信データは十分にマルウェアとしての特徴を含んでいると言える.マ ルウェアはC&Cサーバからの命令に応じて悪意ある活動を実行したり,マルウェア自身のソ フトウェアを更新するため,活動パターンが変化して検知が難しくなる.そのためC&Cサー バからの命令が機能していない場合はマルウェアとしての脅威は低減されるため,通信が発 生しないプログラムや,調査活動以外の活動が観測されなかったプログラム,コントロール チャネルから命令を受信しない,あるいは命令を無視するプログラムは除外し,マルウェア としての活動が見られた299件の通信データを対象に検知性能を調査した.
受動攻撃型マルウェアの通信データ収集
False Negative評価には,新たに通信データDqを用意した.Dqは悪意のあるドメイン名
のリストを提供しているWebサイト[73, 74]の情報とWeb検索エンジンを利用し,Webブ ラウザを対象とした攻撃コードが含まれると見られるWebページを調査した.2009年4月 17日から同年5月14日の間に第3.1節で示した分析用環境において,脆弱性のあるInternet
ExplorerによってWebページを閲覧し,通信データを取得した.このうちWindowsの実行形
式ファイルが自動的にダウンロードされた通信データをDqとする.Malware Domain Listに 掲載されていた悪意のあるWebページに含まれる受動感染型マルウェアの通信データDpと,
他のサイトから確認した悪意のあるWebページに含まれる受動感染型マルウェアの通信デー タDqが共に検知できるかを評価し,検知手法の性能と一般性を示す.ただし,第3.1節で示 した分析環境ではActiveXコントロール,Adobe Flash Player,PDF閲覧プラグインを導入し ていなかったため,これらの脆弱性を利用した攻撃ではWindows実行形式ファイルがダウン ロードされても,攻撃が失敗したと見られる.したがって,これらの脆弱性を利用した攻撃 の通信データはあらかじめ除外しており,それぞれD0p,D0qとする.
7.1.2 評価用ルールの準備
能動攻撃型マルウェアの検知ルール
本手法による能動攻撃型マルウェアの検知精度を評価するために,IRCによって命令を送 受信するボットの主要な活動パターンを示すルールを作成した.これを表7.1に示す.ルール 作成にはEvanらの研究[34]やCyber-TAによる調査[75]において明らかにされている能動攻 撃型マルウェアによる通信データを参考にした.
ルールR1,R2,R3はそれぞれイベントe1,2,3,4,5,e6,7,8,9,e10,11,12で構成されている.イベ ントの発生条件を満たすと指定された動作を実行し,最終的にボットの活動を検知した場合 は管理者に対応を促すアラートが発行される.各イベントの動作では変数vnにあらかじめ指 定した値や通信データの一部を代入し,発生順序の制御や通信データの保持を実現している.
• R1: IRCで受信したC&Cサーバからの命令にもとづいて,TCPポート135,137,139, 445のいずれかを調査する活動を検知するルールである.明らかにされており,e2では その一部を用いている.また,Base64形式の命令とみられる文字列もe3で検知対象と している.IRCセッションに命令と予想される文字列が発見された後に各TCPポート への接続要求が一定回数を上回った場合,ボットの活動と見なす.
• R2: IRCで受信したボット更新ファイルの取得命令にもとづいて,HTTP経由で実行ファ
イルを取得するふるまいを検知するルールである.e7においてIRC上で発見したURL をv5に保存し,e8のHTTP要求とv5のURLが一致するかを確認する.e9はe8からの
表7.1:能動攻撃型マルウェアの検知用ルール概要
イベントの発生条件 イベント発生時の動作
R1 e2 (TCPセッションにおけるIRC)∧ v2←true(120秒) data("(root.mass|ipscan|adv.start|
135|137|139|msass|advscan|lsass|scanall")
e3 (v1=true)∧data("[0-9A-F]{64}") v2←true(120秒) e4 (v2=true)∧TCPポート135,137,139,445番への
接続要求
v3←v3+1 (60秒)
e5 v3>32 アラート
R2 e7 IRCセッション∧URL形式の文字列の出現 v5← URL形式の文字列 (120秒)
e8 data(v5) v6←true(60秒)
e9 (v6=true)∧ f ormat(WinExe) アラート
R3 e10 TCPポート135,137,139,445, v7←v7+1 (120秒) 3127番への接続要求 v8←src_addr(120秒) e11 (v8=src_addr)∧Windows実行形式のファイルの送
信
v9←true(300秒)
e12 (v7>32)∧(v9=true) アラート
src_addr:送信元IPアドレス
data(R) : HTTP応答データに正規表現Rに一致するデータが含まれればtrue f ormat(WinExe) : HTTP応答データがWindowsの実行形式ファイルであればtrue
状態遷移であるため,e8と同一セッションでのHTTP応答にMicrosoft Windowsにおい て実行可能な形式のファイルが含まれていた場合,これをボットの活動とみなす.実行 形式の検知は[28]を参考にルールを作成した.
• R3: 同一ホストから調査活動とWindows実行形式のファイル送信が同時期に発生して いることを検知するルールである.TCPポート135,137,139,445を用いた調査活動 を検知し,同時に送信元アドレスをv8に保存する.当該ホストから送信されるパケッ
トにWindows形式を検知した場合,ボットの感染活動およびマルウェアの送信を実施
しているとみなす.
受動攻撃型マルウェアの検知ルール
受動攻撃型マルウェアによるネットワークトラフィックを評価するためのルールを用意し
た.Web閲覧時にJava Script処理をきっかけとして攻略される脆弱性を利用した攻撃を受け,
マルウェアの転送や悪意ある活動が発生するというシナリオに基づいて定義されている.ア