ビヘイビア法
マルウェアの検出手法の1つ。プログラムを実行したときの、データの読み書きや通信などの振る舞いを監視し、不審な動作からマルウェアを検出する。
イマシルちゃんの解説
ビヘイビア法は、プログラムを動かしたときの振る舞いから、マルウェアを見つける検出手法だよ。
ファイルの書き換えや外部への通信などを監視し、不審な動きがないか調べるんだ。
たとえば大量のファイルを次々に暗号化する動きは、ランサムウェアを疑う手掛かりになるよ。
プログラムの見た目だけに頼らないので、まだ特徴が登録されていないマルウェアも見つけられる場合があるんだ。
ただし普通のソフトも似た動きをすることがあるから、怪しい動きがあれば必ずマルウェアだとは限らないよ。
この解説はわかりやすかったですか?
より深い解説
定義
ビヘイビア法(振る舞い検知)は、検査対象のプログラムを実際に動かし、その動作(ファイルの読み込みや書き込み、レジストリの変更、プロセスの生成、ネットワークへの通信など)を監視して、マルウェアに特有の振る舞いを検出する手法である。実行の監視は、実際の環境で行う場合と、隔離されたサンドボックス(仮想環境)の中で行う場合がある。
検出する振る舞いの例
| 振る舞い | 疑われるマルウェア |
|---|---|
| 短時間に大量のファイルを読み込んで暗号化し、書き戻す | ランサムウェア |
| ほかの実行ファイルを書き換える | ウイルス(感染型) |
| OSの起動時に自動で実行されるように登録する | 常駐型のマルウェア全般 |
| キー入力を横取りする | キーロガー |
| 決まった間隔で外部のサーバと通信する | ボット(C&Cサーバとの通信) |
長所と短所
| 長所 | 短所 |
|---|---|
| マルウェア定義ファイルにない未知のマルウェアや、亜種も検出できる | 正規のソフトウェアを誤って検出する(誤検知)ことがある |
| コードを変形させて見た目を変えるマルウェアにも強い | 実際に動かすため、検出までに被害が出る可能性がある(サンドボックスで緩和) |
| サンドボックスを検知すると、おとなしくして正体を隠すマルウェアがある |
マルウェアの検出手法の比較
| 手法 | 何を手がかりにするか | 未知のマルウェア |
|---|---|---|
| パターンマッチング法 | マルウェア定義ファイルに登録された特徴的なコード | 検出できない |
| ヒューリスティック法(静的) | コードの中のマルウェアらしい命令の組み合わせ | ある程度検出できる |
| ビヘイビア法 | 実行時の振る舞い | 検出できる |
| コンペア法 | 安全な場所に保管した原本との比較 | 改変は検出できる |
| チェックサム法(インテグリティチェック法) | あらかじめ付けておいたチェックサムやハッシュ値との照合 | 改変は検出できる |
ヒューリスティック法のうち、プログラムを実際に動かして振る舞いを見るものは、ビヘイビア法と同じ考え方であり、動的ヒューリスティック法とも呼ばれる。
EDRとの関係
近年の企業向けのセキュリティ製品であるEDR(Endpoint Detection and Response)は、ビヘイビア法の考え方を発展させたもので、端末上のプロセスやファイル、通信の振る舞いを継続的に記録・分析し、不審な動作を検知したら、端末の隔離などの対応を行う。マルウェアを侵入前に完全に防ぐことは難しいという前提に立ち、侵入後に素早く検知して対応することを重視している。