セキュリティを形にする日本のエンジニアたち


第5回 “感染後をケアするエンジン”の必要性


梅橋一充
株式会社フォティーンフォティ技術研究所
技術本部 沖縄研究開発部 部長
2010/8/11
ウイルスを検知する4つのエンジンの裏で、ひっそりと働くエンジンがある。エンジニアはなぜ、その製作に取り組んだのか(編集部)

 ウイルスを完全駆除せよ! ヒストリカル・レメディエーション!


フォティーンフォティ技術研究所
技術本部 沖縄研究開発部 部長
梅橋一充

 ウイルス対策ソフト「FFR yarai 2009」(以下、yarai)に搭載されている4つの目立ちやすい検出エンジン(Static分析エンジン、サンドボックスエンジン、HIPSエンジン、ZDPエンジン)の影でひっそりと動作しているエンジンがある。そのエンジンの目的はウイルスを「完全」に駆除すること。

 今回はその駆除機能である「ヒストリカル・レメディエーション・テクノロジー」(以下、ヒストリカル・レメディエーション)についてお話ししたい。

 これまでのアンチウイルス製品では、感染後の対策はあまり重視されていないように思えた。というのは、シグネチャベースの検出機能を持った製品では、発見したマルウェアの駆除は可能だが、そのマルウェアが生成したファイルやレジストリについては一切関知していないケースがほとんどだからだ。実際、マルウェアは自分自身の複製やDLLファイルの出力、特定のレジストリエントリに値を設定したりするなど、PC上に有害なデータを残すことが多い。それらを駆除せずして、PCから脅威を取り除いたといえるのだろうか?

 従来のマルウェアは単体で動作するものが主流であったが、近年、攻撃者のサーバ上からプログラムやマシンコードをダウンロードする「ダウンローダー」によって、PC上に次々とウイルスを設置する多段型の「シーケンシャルマルウェア」が猛威を振るっている。

 ダウンローダーによって、ダウンロードされるマルウェアは日々変化する。シグネチャベースの検出方法の場合、感染後にパターンファイルの更新によって特定のマルウェアを検出できるようになったとしても、それに関連したマルウェアのパターンが即座に提供されているとは限らず、一斉駆除を実現することは難しい。つまり、これまでの駆除機能の仕組みでは、脅威を迅速に、かつ完全に取り除くことはできないことを意味している。

 そこで生まれたのが、進化した駆除機能「ヒストリカル・レメディエーション」である。

 ウイルスの足跡を追う

 ヒストリカル・レメディエーションでは、マルウェアがいつ、どこで、どんなデータ(ファイル/レジストリ)をどのように操作したかを記録する。こういったマルウェアの足跡を履歴として記録し、その履歴をたどることで、関連するマルウェアも根こそぎ駆除することが可能となる。

 さて、ここで問題となってくるのがマルウェアの履歴、つまり「足跡」の管理方法である。

 もし、Static分析エンジンSandboxエンジンでマルウェアを検出できなかった場合、HIPSエンジンによって実行中のプログラム(マルウェア)が不審な挙動を検知するまで、履歴を永続的に管理する必要があり、メモリ上だけで処理することができない。そして、管理する情報量が増えた場合でも一定の速度で履歴を検索・操作できなければ、パフォーマンスに大きく影響してしまい、製品として使い物にならない結果となってしまう。

 そのような問題に対応するために、ヒストリカル・レメディエーションでは組み込み型のデータベースを採用し、効率よく履歴を管理している。また、履歴データの更新アルゴリズムをチューニングして、履歴のディスク消費量を抑えたり、データベースへのアクセス回数を極力減らすように実装している。

 当然ながら、ヒストリカル・レメディエーションはスパイウェアではないため、ファイルやレジストリ操作に関する履歴情報は、ユーザーPC内でのマルウェアの駆除目的にのみ利用している。安心していただきたい。

1/2

Index
“感染後をケアするエンジン”の必要性
Page1
ウイルスを完全駆除せよ! ヒストリカル・レメディエーション!
ウイルスの足跡を追う
  Page2
苦労した「デバイスドライバでの実装」
ヒストリカル・レメディエーションの今後


セキュリティを形にする日本のエンジニアたち
連載インデックス


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間