TY - JOUR
T1 - Two-phase pattern matching for regular expressions in intrusion detection systems
AU - Yang, Chang Ching
AU - Cheng, Chen Mou
AU - Wang, Sheng D.E.
PY - 2010/9
Y1 - 2010/9
N2 - Regular expressions are used to describe security threats' signatures in network intrusion detection (NID) systems. To identify suspicious packets using regular expression matching, many NID systems use memory-based deterministic finite-state automata (DFA) with one-pass-scanning model, which is fast and allows dynamic updates. However, a number of practical signature patterns commonly found in a variety of NID systems, e.g., ". *A. {N}B", can cause a state-explosion problem in such a model. In this paper, we propose a two-phase pattern matching engine (TPME) to solve this problem. In our proposed approach, the state storage cost is reduced to linearly dependent on the number of repetitions N in the patterns. With the new approach, we are now able to handle those practical patterns that would have caused the state-explosion problem in memory-based DFA. We report our implementation of TPME on a field programmable gate array (FPGA). With our prototype implementation, we can achieve a throughput of more than 1.86 gigabits per second for pattern matching in a practical NID system.
AB - Regular expressions are used to describe security threats' signatures in network intrusion detection (NID) systems. To identify suspicious packets using regular expression matching, many NID systems use memory-based deterministic finite-state automata (DFA) with one-pass-scanning model, which is fast and allows dynamic updates. However, a number of practical signature patterns commonly found in a variety of NID systems, e.g., ". *A. {N}B", can cause a state-explosion problem in such a model. In this paper, we propose a two-phase pattern matching engine (TPME) to solve this problem. In our proposed approach, the state storage cost is reduced to linearly dependent on the number of repetitions N in the patterns. With the new approach, we are now able to handle those practical patterns that would have caused the state-explosion problem in memory-based DFA. We report our implementation of TPME on a field programmable gate array (FPGA). With our prototype implementation, we can achieve a throughput of more than 1.86 gigabits per second for pattern matching in a practical NID system.
KW - Deterministic finite-state automata
KW - Network intrusion detection
KW - Pattern matching
KW - Regular expressions
KW - Two-phase matching engine
UR - https://www.scopus.com/pages/publications/77958006681
M3 - 文章
AN - SCOPUS:77958006681
SN - 1016-2364
VL - 26
SP - 1563
EP - 1582
JO - Journal of Information Science and Engineering
JF - Journal of Information Science and Engineering
IS - 5
ER -