Fast Signature Matching Using Extended Finite Automaton (XFA)

  • Authors:
  • R. Smith;C. Estan;S. Jha;I. Siahaan

  • Affiliations:
  • University of Wisconsin, Madison, USA WI 53706;University of Wisconsin, Madison, USA WI 53706;University of Wisconsin, Madison, USA WI 53706;Universit a di Trento, Povo-Trento, Italy TN 38100

  • Venue:
  • ICISS '08 Proceedings of the 4th International Conference on Information Systems Security
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Automata-based representations and related algorithms have been applied to address several problems in information security, and often the automata had to be augmented with additional information. For example, extended finite-state automata (EFSA) augment finite-state automata (FSA) with variables to track dependencies between arguments of system calls. In this paper, we introduce extended finite automata (XFAs) which augment FSAs with finite scratch memory and instructions to manipulate this memory. Our primary motivation for introducing XFAs is signature matching in Network Intrusion Detection Systems (NIDS). Representing NIDS signatures as deterministic finite-state automata (DFAs) results in very fast signature matching but for several types of signatures DFAs can blowup in space. Nondeterministic finite-state automata (NFA) representation of NIDS signatures results in a succinct representation but at the expense of higher time complexity for signature matching. In other words, DFAs are time-efficient but space-inefficient, and NFAs are space-efficient but time-inefficient. Our goal is to find a representation of signatures that is both time and space efficient. In our experiments we have noticed that for a large class of NIDS signatures XFAs have time complexity similar to DFAs and space complexity similar to NFAs. For our test set, XFAs use 10 times less memory than a DFA-based solution, yet achieve 20 times higher matching speeds.