限界を迎えつつある「パターンマッチング」という手法 − @IT(情報元のブックマーク数)

これは面白い発想の記事。実際の開発の苦労話とか経緯とかの記事です。

本連載では、yaraiの企画からリリースに至る舞台裏を紹介する。なぜFFRはアンチウイルスに参入したのか、どのような困難があったのか、そして、どのように困難を克服したのかといったプロセスを、実際に業務に携わった各エンジニアの目線でお話しする。

限界を迎えつつある「パターンマッチング」という手法 − @IT

ブレストやアイデア出しから完了まで1年、

2008年春、新製品【注】開発に向けプロジェクトが発足し、本格的なブレインストーミングやアイデア出しのミーティングを開始した。非常にタイトではあるが、この時点ですでに2009年春新製品リリースという目標を掲げており、そこからさかのぼって設定した「2008年9月開発開始」に向け、アイデア出しの状況から半年以内で概要設計が可能な状態にする必要があった。

限界を迎えつつある「パターンマッチング」という手法 − @IT

マーケット分析と勢力分析、自分の会社の強み分析ですね。

しかし、正直にいうと、私はこの時点ではウイルス対策機能の開発に乗り気でなかった。なぜならすでにウイルス対策ソフト市場は成熟しており、強力なコンペティターが存在する中でベンチャー企業が商業的に成功するのは難しいのではないか、と考えたからである。

限界を迎えつつある「パターンマッチング」という手法 − @IT

パターンマッチングの限界と脆弱性を突く攻撃の多様化、それがウイルスにも当てはまってyaraiが未知の脆弱性防御ソフトにウイルス対策を追加したと言う話。

実際には既存のウイルス対策ソフトにも多数の問題があり、まだ技術的に完成されていないという事実が判明した。2007年度にIPA公募により標的型攻撃に関する調査を行った際、既存のアンチウイルスソフトは標的型攻撃に対しほとんど効果を発揮しなかったのである。このとき広く使われていた「パターンマッチング」技術が破たんしつつあるのは明らかだった。
「パターンマッチング」とは、古くから存在するウイルス検出方法であり、基本的には特定のバイト列が含まれているかどうかでウイルスを判断している。特定のバイト列は既存のウイルス検体から抽出し、同じバイト列が含まれている場合のみウイルスと判断するため、既存ウイルスに少し手を加えただけの新種ウイルスでも、ウイルスではないと判断されてしまう。
このように、パターンマッチング技術では未知のウイルスに対応できないことが広く認知されるようになり、各ベンダとも未知のウイルス検知の実現に向け、改良を加えているが、やはり既存の技術で何とかしようという動きには限界があるように感じる。
なにしろ、アンチウイルスベンダ側だけでなく、ウイルス作成側にも同様に長年のノウハウが蓄積されているのだ。ウイルス開発環境は整っているし、使用される技術も非常に高度になってきている。
ウイルス対策機能も含めてはどうか、という提案に乗り気でなかった私も、「パターンマッチング」の危機的状況を受け、このような技術トレンドの転換期に新しい技術を搭載し、いままでと違う視点を持った製品を開発することで、既存の製品にはない、まったく新しい効果を発揮できるのではないか、と考えるようになった。
その後さまざまな議論を重ねた結果、2008年8月、「脆弱性防御機能付きのウイルス対策ソフトウェア」の可能性、方向性を模索していくこととなる。

限界を迎えつつある「パターンマッチング」という手法 − @IT

screenshot