Two-phase pattern matching for regular expressions in intrusion detection systems

  • Chang Ching Yang*
  • , Chen Mou Cheng
  • , Sheng D.E. Wang
  • *Corresponding author for this work

Research output: Contribution to journalJournal Article peer-review

3 Scopus citations

Abstract

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.

Original languageEnglish
Pages (from-to)1563-1582
Number of pages20
JournalJournal of Information Science and Engineering
Volume26
Issue number5
StatePublished - 09 2010
Externally publishedYes

Keywords

  • Deterministic finite-state automata
  • Network intrusion detection
  • Pattern matching
  • Regular expressions
  • Two-phase matching engine

Fingerprint

Dive into the research topics of 'Two-phase pattern matching for regular expressions in intrusion detection systems'. Together they form a unique fingerprint.

Cite this