ウイルススキャン 【virus scan】 ウイルスチェック / virus check
概要
ウイルススキャン(virus scan)とは、コンピュータのストレージ(外部記憶装置)に保存されたファイルの一部としてコンピュータウイルスが潜んでいないか検査すること。トロイの木馬など他のマルウェアも対象とすることが多い。ハードディスクやSSD、光学ディスク、USBメモリなど、記録メディアに保管されたファイルを順番に読み込んで、ウイルスなどの不正なソフトウェアに感染していないか調べる。
正規版(製品版)のアンチウイルスソフトなどは検知されたウイルスを駆除して感染前の状態に戻す機能を持つことが多いが、体験版や無償のオンラインサービスなどでは検査だけを行い、駆除は行わないものもある。
パターンマッチング法
ウイルスの検知手法として最も一般的な方式で、既知のウイルスに含まれる特異的なコード断片などのパターンを大量に記録しておき、検査対象のファイルに一致するものがないかを調べる方式である。
識別用のデータはパターンファイル(ウイルス定義ファイル)として開発元から提供され、新種が発見されるたびに自動的にオンラインで更新されるようになっていることが多い。
過去に発見されたウイルスはほぼ完全に捕捉でき、誤検知が少ない一方、広まり始めたばかりの新種や、既存のウイルスの一部を改変してパターンに一致しなくなった亜種、感染時に毎回自らを書き換えるポリモーフィック型ウイルスには弱い。
ヒューリスティック検知
コードの並びそのものを調べるのではなく、ウイルスに特徴的なプログラムの振る舞いを検知する方式をヒューリスティック検知(heuristic scan)という。
通常のプログラムはあまり行わないが、多くのウイルスが共通して行う挙動があり、そうした挙動が同じ実行ファイルにいくつも見られるような場合にはその部分にウイルス感染が疑われる。
パターンマッチングでは検知が難しい未知のウイルスや亜種にも対応できるが、システム設定を書き換えるプログラムなどをウイルスであると誤判定することもある。
挙動の確認方法の違いにより、プログラムファイルのコードを読み込んで既知の不審なパターンに一致するか調べる「静的ヒューリスティック法」(単にヒューリスティック法といえばこちらを指す)と、仮想環境などを用意して実際にプログラムを実行してみる「動的ヒューリスティック法」(ビヘイビア法)がある。