学習アルゴリズムを用いた未知ウイルスのフィルタリング

Bayesian Virus Filter

我々のグループでは,学習アルゴリズムの一種であるベイズ学習に注目し, それを未知ウイルス検出用に応用したBayesian Virus Filter(以下,BVFilter) を考案しています.

ベイズ学習アルゴリズムはスパム検出用アルゴリズムとして近年注目されており, 様々な実装が存在します. しかし,ウイルス検出用のフィルタとして応用するような研究はまだあまり行われてはいません. ベイズ学習がウイルス検出に応用可能である場合には, 既に広く普及しているスパム検出用のフィルタに多少の修正を加えるだけで, 多くの未知ウイルスを検出できるようになる可能性があります.

特徴選択数Nおよび学習データstringsの最短長と検出の連続回数chainの関係
特徴選択数Nおよび学習データstringsの最短長と
検出の連続回数chainの関係
特徴選択数Nおよび学習データstringsの最短長と誤検出の関係
特徴選択数Nおよび学習データstringsの最短長と
誤検出の関係

BVFilterは,過去に発生した既知ウイルスの特徴をベイズ学習アルゴリズムで 学習を行い,未来に発生する未知ウイルスを検出するフィルタです. 学習の際には以下のような様々な要因を考える必要があります.

我々の研究では,学習アルゴリズムにGrahamベイズを用い, 学習データにはウイルスから抽出できるASCIIコードの一定数以上の連なりである stringsを用いることで,未知のウイルスに遭遇する回数を 一般的なウイルス検出ソフトに比べて,最高で約82%削減できることが分かっています.

BVFilterの最終的な目標は,既知ウイルスを学習することで 共通点を持った未来の未知ウイルスを検出可能にし, 既存のウイルス対策ソフトの弱点を補完することにあります. アンチウイルスの最大の弱点は,対応するシグネチャが更新されるまでの間, 新たに発生した未知ウイルスを検出できないことにあるため, BVFilterと既存のウイルスを組み合わせて用いることで, このような発見不可能な未知ウイルスに遭遇する回数を減少させ, 被害を最小限に抑えることが出来ます.