若葉 陽一 木更津工業高等専門学校電気電子工学科 助教 |
[背景]ネットワーク侵入検知システム(NIDS)によるサイバー攻撃対策
[問題]現在のネットワーク環境に対して既存のNIDSは性能不足
[貢献]NIDSのための高性能パターンマッチングハードウェアを提案
[問題]現在のネットワーク環境に対して既存のNIDSは性能不足
[貢献]NIDSのための高性能パターンマッチングハードウェアを提案
インターネット技術の発展は,クラウドコンピューティング等のさまざまなサービスを生み出し,現代社会に多大な利益をもたらしている.その一方で,コンピュータウィルス等によるサイバー攻撃被害も増加しており,その被害額は,全世界で数千億ドルにも達していることが報告されている.サイバー攻撃は今やきわめて大きな社会問題となっており,安全なICT社会を実現するためには,その対策は必要不可欠である.
サイバー攻撃対策の1つとして,ネットワーク侵入検知システム(NIDS)の導入が挙げられる.NIDSはネットワーク上を流れる通信パケットを監視することでネットワークに対する不正侵入や攻撃の検知を行う.攻撃の検知は,ウィルスを定義したパターン(ウィルスパターン)を用いて,通信パケットの内容に攻撃コードが含まれているかどうかの判定(パターンマッチング)によって行われる.
従来,NIDSではパターンマッチングのソフトウェア処理が一般的であった.しかし近年,ギガビットを超えるネットワーク速度の向上により,ソフトウェアによるリアルタイム処理は困難となり,パターンマッチングの高速化が求められている.また,サイバー攻撃の増加に伴うウィルスパターン数の増加や,新しいウィルスの頻繁な出現に伴うパターン更新頻度の増加に対する対応も求められている.さらに,攻撃の複雑化に対応するためにパターンは単純な文字列から正規表現や拡張正規表現で記述されるようになっている.これらの状況に対応するため,本研究では以下の3つの手法を提案した.
まず,ネットワーク速度の向上とパターンの更新頻度の増加に対応するために,パターンを瞬時に書き換え可能なパターンマッチングハードウェアを提案した.提案回路はあらかじめどんなパターンでも扱えるように設計されており,回路内のメモリの値を書き換えるだけでパターンを更新することができる.
次にウィルスパターン数の増加に対応するために,FPGAの一部分のみを再構成できる機能を用いて回路規模を削減する手法を提案した.上述の回路はあらかじめどんなパターンでも扱えるように多くの機能を持つ.しかし実際に与えられるパターンに対しては機能の大半は使用されない.そこで,使用されない機能は回路に実現しないことで,回路面積削減を実現する.与えられたパターンに必要な機能のみを持つ回路を生成する既存手法はあるが,回路の再設計が必要となり,新しいパターンに即座に対応できない.提案手法はあらかじめ異なる機能を持った部分回路をいくつか設計しておき,パターンに合わせて部分回路を組み合わせることで全体回路を生成する.
最後に攻撃の複雑化に対応するため,拡張正規表現(後方参照)で記述されたパターンマッチングの高速化手法を提案した.ハードウェアのみで後方参照のマッチングを行うと,回路構成が非常に複雑となり高速化は難しい.そこで提案手法は,ほとんどのパケットがウィルスではないことを利用し,ハードウェアでおおまかなマッチングを行い,安全なパケットとウィルスの可能性のあるパケットを高速に選別し,怪しいパケットのみをソフトウェアで実際にウィルスであるかを判定する.
サイバー攻撃対策の1つとして,ネットワーク侵入検知システム(NIDS)の導入が挙げられる.NIDSはネットワーク上を流れる通信パケットを監視することでネットワークに対する不正侵入や攻撃の検知を行う.攻撃の検知は,ウィルスを定義したパターン(ウィルスパターン)を用いて,通信パケットの内容に攻撃コードが含まれているかどうかの判定(パターンマッチング)によって行われる.
従来,NIDSではパターンマッチングのソフトウェア処理が一般的であった.しかし近年,ギガビットを超えるネットワーク速度の向上により,ソフトウェアによるリアルタイム処理は困難となり,パターンマッチングの高速化が求められている.また,サイバー攻撃の増加に伴うウィルスパターン数の増加や,新しいウィルスの頻繁な出現に伴うパターン更新頻度の増加に対する対応も求められている.さらに,攻撃の複雑化に対応するためにパターンは単純な文字列から正規表現や拡張正規表現で記述されるようになっている.これらの状況に対応するため,本研究では以下の3つの手法を提案した.
まず,ネットワーク速度の向上とパターンの更新頻度の増加に対応するために,パターンを瞬時に書き換え可能なパターンマッチングハードウェアを提案した.提案回路はあらかじめどんなパターンでも扱えるように設計されており,回路内のメモリの値を書き換えるだけでパターンを更新することができる.
次にウィルスパターン数の増加に対応するために,FPGAの一部分のみを再構成できる機能を用いて回路規模を削減する手法を提案した.上述の回路はあらかじめどんなパターンでも扱えるように多くの機能を持つ.しかし実際に与えられるパターンに対しては機能の大半は使用されない.そこで,使用されない機能は回路に実現しないことで,回路面積削減を実現する.与えられたパターンに必要な機能のみを持つ回路を生成する既存手法はあるが,回路の再設計が必要となり,新しいパターンに即座に対応できない.提案手法はあらかじめ異なる機能を持った部分回路をいくつか設計しておき,パターンに合わせて部分回路を組み合わせることで全体回路を生成する.
最後に攻撃の複雑化に対応するため,拡張正規表現(後方参照)で記述されたパターンマッチングの高速化手法を提案した.ハードウェアのみで後方参照のマッチングを行うと,回路構成が非常に複雑となり高速化は難しい.そこで提案手法は,ほとんどのパケットがウィルスではないことを利用し,ハードウェアでおおまかなマッチングを行い,安全なパケットとウィルスの可能性のあるパケットを高速に選別し,怪しいパケットのみをソフトウェアで実際にウィルスであるかを判定する.

(2014年5月19日受付)