Snortの正規表現マッチングのFPGA実装の自動化と高頻度パターンを見つけるためのN-gram分析

福田 真啓  井口 寧  

誌名
電子情報通信学会論文誌 D   Vol.J102-D   No.3   pp.141-150
発行日: 2019/03/01
Online ISSN: 1881-0225
DOI: 10.14923/transinfj.2018PDP0026
論文種別: 特集論文 (学生論文特集)
専門分野: 計算機システム
キーワード: 
FPGA,  正規表現マッチング,  N-gram,  10 Gbps,  

本文: PDF(987.5KB)>>
論文を購入




あらまし: 
ネットワーク型不正侵入検知・防御システム(Network-based Intrusion Detection and Prevention System; NIDPS)の代表例として,Snortは正規表現のマッチング(Regular Expression Mattching; REM)によって攻撃を検知するが,これまで処理速度やメモリ量の観点からFPGAを用いた研究が多くなされてきた.本論文では,N-gram分析を応用することにより,Snort内の多数の正規表現から高頻度出現パターンを抽出し共通化する方法を提案し,リソース使用量を削減する.本論文の貢献は,FPGA上で実行可能なREMモジュールの生成を自動化したことに加え,高頻度出現パターンを共通化することにより,全体としてのリソース使用量を削減したことである.提案手法と先行研究の手法であるMerged-states Non-deterministic Finite Automaton with Unbounded string transition (MNFAU)を組み合わせて適用することにより,Snort 2.9. 11.1の正規表現に対する非決定性有限オートマトン(Non-deterministic Finite Automaton; NFA)のFPGA実装のLUT数を,提案手法を適用しないときの0.69倍に削減できることを確認した.本論文では,XC7VX485における本モジュールのリソース使用量と最大クロック周波数を評価する.