情報処理安全確保支援士 - SE娘の剣 -

左門至峰による情報処理安全確保支援士試験に合格するためのサイトです。 過去問を多数引用しながら、基礎知識をしっかり学んでもらうように作ってあります。

ウイルス検出手法

1.ウイルス検知手法

ウイルス対策の仕組みはメーカによって異なり、考え方も明確に定義されていないが、おおむね以下だと考えている。

(1)パターンマッチング

 シグネチャによるパターンマッチングだ。しかし、これだとパターンが少しちがっただけでも検知できない。

「あらかじめ特徴的なコードをパターンとして登録したウイルス定義ファイルを用いて、ウイルス検査対象と比較し、同じパターンがあれば検出する(H21春SC午前2問8不正解選択肢)」方法を何というか。

最も基本的な検出方法であろう。違う過去問では、「既知ウイルスのシグネチャコードと比較して、ウイルスを検出する」(H23秋FE午前43)と述べられている。正解は、パターンマッチング法 である。

また、定義ファイルを都度更新することも重要です。

■IPAの資料
http://www.ipa.go.jp/security/fy15/reports/uvd/documents/uvd_report.pdf
この資料が参考になるだろう。以下にその仕組みの解説を引用する

パターンマッチング法
 文献中の用語でいう「パターンデータ」「ウイルスパターン」「パターンファイル」「ウイルス定義ファイル」等を用いて、何らかの特徴的なコードをパターンとしてウイルス検査対象と比較することで検出する場合をこの手法に分類する。また、特徴的なコードの定義には、ファイル名、メール送受信者の名前やアドレス、送信経路情報、メールメッセージの表題、テキスト文章、バイナリ情報等も含めて考え、それらの登録情報(パターン)と検査対象の情報との比較による検出についても同手法によるものとする。

(2)ヒューリスティック分析

ファイルの中で、ウイルスの特徴的な動作をしそうな部分を抜きだし、その部分におかしな動きをするものがないかを確認する。
929c854c

いわゆる動的解析ですね



いや、抜き出した部分をシグネチャベースでチェックするので、静的と言われることが多い。(このあたりは価値観というか、メーカの見解にもよってわかれる)。そして、機能としてはパターンマッチングの機能の一部と考えられることもある。

 ■IPAの資料
http://www.ipa.go.jp/security/fy15/reports/uvd/documents/uvd_report.pdf
この資料が参考になるだろう。以下にその仕組みの解説を引用する。 

ヒューリスティック法
 ウイルスのとるであろう動作を事前に登録しておき、検査対象コードに含まれる一連の動作と比較して検出する場合をこの手法に分類する。「動作の特徴コード」を検出に用いているかどうかが分類の大きな尺度となる。

ヒューリスティック法は静的解析に分類される。
上記の文献には「この検査も、検査対象プログラムを実行せず、ウイルスらしい行動を起こすかどうかをプログラムコードの静的な解析によって判断する」と述べらている。

(3)振る舞い検知(ビヘイビア法)

 動的な検知方法である。検体の動きを見るのだ。異常な通信量やリソースを食っていないかなどを判断する。動的ヒューリスティックと呼ばれることもある。
 ただ、誤検知が多いことも事実だ。よって、多くの人は、この機能をOFFにしているのではないかと思う。

「ウイルスの感染や発病によって生じるデータ書き込み動作の異常や通信量の異常増加などの変化を監視して、感染を検出する」(H21SC秋午前Ⅱ問8)方法を何というか。

過去問では、この問題は、「ウイルスの検出方法であるビヘイビア法の説明」として出題されている。
ビヘイビア法は振る舞い検知と考えていい。上記の問題にあるように、パターンマッチングではなく、動きを見るのだ。上記以外には、異常なプロセスが立ち上がっていないかなども見ると思う。
※振る舞い検知を動的ヒューリスティックという場合もある。

■IPAの資料
http://www.ipa.go.jp/security/fy15/reports/uvd/documents/uvd_report.pdf
この資料が参考になるだろう。以下にその仕組みの解説を引用する

ビヘイビア法
 ウイルスの実際の感染・発病動作を監視して検出する場合をこの手法に分類する。感染・発病動作として「書込み動作」「複製動作」「破壊動作」等の動作そのものの異常を検知する場合だけでなく、感染・発病動作によって起こる環境の様々な変化を検知することによる場合もこの手法に分類する。例えば、「例外ポート通信・不完パケット・通信量の異常増加・エラー量の異常増加」「送信時データと受信時データの量的変化・質的変化」等がそれにあたる。


■H26秋NW午前Ⅱ
問20 ウイルス検知手法の一つであるビヘイビア法を説明したものはどれか。
ア ウイルスの特徴的なコード列が検査対象プログラム内に存在するかどうかを調べて,もし存在していればウイルスとして検知する。
イ 各ファイルに,チェックサム値などウイルスではないことを保証する情報を付加しておき,もし保証する情報が検査対象ファイルに付加されていないか無効ならば,ウイルスとして検知する。
ウ 検査対象ファイルのハッジュ値と,安全な場所に保管してあるその対象の原本のハッジュ値を比較して,もし異なっていればウイルスとして検知する。
エ 検査対象プログラムを動作させてその挙動を観察し,もしウイルスによく見られる行動を起こせばウイルスとして検知する。






ア:パターンマッチング法
イ:チェックサム法
ウ:コンペア法
エ:ビヘイビア法

正解:エ

コンピュータウイルス対策r
以下のIPAの資料も参考になる。
http://www.ipa.go.jp/security/fy15/reports/uvd/documents/uvd_report.pdf

(4)チェックサム方式 

※この言葉は覚えなくていいでしょう。

「ファイルのチェックサムと照合して、ウイルスを検出する」(H23秋FE午前43不正解選択肢)方法を何というか。

私はメジャーなウイルス対策ソフトを使ってますが、どの方式を採用しているのでしょうか?気になるところです。
さて、この問題の正解は「チェックサム方式」です。

(5)逆アセンブル

こちらも覚えなくていいと思います。

H23SC春午前2
問10 ウイルスの調査手法に関する記述のうち、適切なものはどれか。

ア 逆アセンブルは、バイナリコードの新種ウイルスの動作を説明するのに有効な手法である。
イ パターンマッチングではウイルスを検知する方式は、暗号化された文書中のマクロウイルスの動作を解明するのに有効な手法である。
ウ ファイルのハッシュ値を基にウイルスを検知する方式は、ウイルスのハッシュ値からどのウイルスの亜種かを特定するのに確実な手法である。
エ 不正な動作からウイルスを検知する方式は、ウイルス名を特定するのに確実な手法である。




難しいですね。

正解はア

2.静的解析と動的解析

上記「パターンマッチング」と「ヒューリスティック分析」が静的解析、「振る舞い検知(ビヘイビア法)」が動的解析になる。
上記のIPAの資料を参考に、検出のタイミングを整理すると
・検出のタイミングは「ウイルス実行前」で、静的解析である。
・検出のタイミングは「ウイルス実行中」で動的解析である。

■ウイルスチェックのサイト
話は変わるが、ファイルにウイルスが無いかをチェックしてくれるサイトがある。たしか、Google社が買収し、今はGoogleのサービスだと思う。
https://www.virustotal.com/ja/
これにより、50以上のウイルス会社によるチェックが行われる。
具体的には、このサイトに検体をUPすると、それが各ウイルス対策メーカに送られ、その結果をvirustotalが受け取って結果を返しているようだ。Virustotalが自ら検査をしているわけではない様子。

一方、同じようなサービスの攻撃者用のサイトもある。
以下だ。目的は違って、攻撃者が作成したファイルが、ウイルスチェックにひっかからないかを確認するものだ。
http://www.virtest.com/
費用であるが、1日30ドルとかそれくらいだと思う。攻撃者にとっては安いものかもしれない。