未知のウイルスを検出する技術
ゼロデイ攻撃や数多くの亜種、そしてスパイウェアやボットの登場により、多くのウイルス対策ベンダーは、パターンマッチング方式とはまったく異なったウイルス検出技術を投入するようになった。そもそも数多くのウイルスを検出するためには、多くのウイルスのデータベースを持たなければならず、パターンファイルが肥大化する。大量のデータが流れてくると、処理のためにはプロセッサに大きな負荷をかけ、時間もかかる。こうした点からも、パターンファイルに頼らず、未知のウイルスを検出できるようにしなければならないのだ。
近年、未知のウイルスを検出する技術として各社が導入しているのが、「ヒューリスティック方式」という検出だ。
ヒューリスティック(heuristic)とは、経験則的といった意味で、過去の経験や学習の成果から、未知のものに対する予測を行なうという意味がある。ウイルスに置き換えれば、あらかじめ予想できる挙動をカタログとして持っておき、検出対象のファイルのコードと見比べて、ウイルスかどうかを判断するという方式である(図6)。つまり、警察が外見や持ち物、挙動を見て、犯罪者を特定するといったイメージだ。
ウイルスらしい挙動としては、システムやDLLファイルを書き換えたり、レジストリを変更する、他のPCに連続して接続要求を出す、大量のファイルを多くの宛先に送りつける、外部からのプログラムを勝手にインストールするといった動作が挙げられる。当然、1つの挙動のみですぐにウイルスと判定するわけではなく、それぞれに得点を付け、総合的に判断する。コード自体を調べてプログラムの動作を解析する方法のほか、「サンドボックス」と呼ばれる隔離空間で実際にプログラムを動作させて解析することもある。
また、ヒューリスティック方式の発展系としては、ビヘイビアベース解析が挙げられる(図7)。ビヘイビアはふるまいを表わし、実行中のプログラムの動作(挙動)を調べて、検出する方式。予防的に動作するヒューリスティック方式と異なり、実際に動作しているプログラムを調べて、ウイルスかどうかを判断する。つまり、実際に万引きのような犯罪を行なわない限り、犯人とはみなされないという現行犯主義といえる。
ウイルスを挙動から判断するこれらの方式の最大のメリットは、パターンファイルに依存しないことだ。実際、パターンファイルが登録される前に、検出できた例は多く、適切なアルゴリズムが動作していれば効果も高い。
ただ、ウイルスらしい挙動というあいまいな条件での分析であるため、誤検出※6の問題は避けて通れない。そのため、パターンマッチング方式と併用するのが一般的だ。
※6:誤検出 正当な通信であるにもかかわらず攻撃とみなしてしまうこと(False Positive)。あるいはその逆に攻撃を正当な通信とみなしてしまうこと(False Negative)。仕組み上、パターンファイル以外の方式では避けられない
(次ページ、「シグネチャをベースに攻撃を検出するIDS」に続く)
この連載の記事
-
第11回
TECH
正規のユーザーやPCを判断する認証製品 -
第10回
TECH
社内の安全を守るセキュリティ製品の進化を知ろう -
第9回
TECH
検疫からシンクライアントまで!情報漏えいを防ぐ製品 -
第8回
TECH
ITでどこまで実現する?情報漏えい対策の基礎 -
第7回
TECH
インターネットで構築するVPNの仕組み -
第6回
TECH
通信サービスを安価にしたVPNの秘密 -
第5回
TECH
メールソフトのセキュリティとメールの認証 -
第4回
TECH
メールが抱える根本的な弱点とスパム対策 -
第3回
TECH
拡がるWebの脅威と対策を理解しよう -
第1回
TECH
不正アクセスを防ぐファイアウォールの仕組み - この連載の一覧へ