The Computer Journal Advance Access originally published online on April 15, 2009
The Computer Journal 2009 52(6):699-723; doi:10.1093/comjnl/bxp026
| ||||||||||||||||||||||||||||||||||||||||||||||||
A Digest and Pattern Matching-Based Intrusion Detection Engine
1 Yahoo! Inc., Santa Clara, CA 95054, USA
2 Department of Mathematics, Florida State University, Tallahassee, FL 32306, USA
3 ProMetrics Inc., King of Prussia, PA 19406, USA
4 Department of Informatics and Telecommunications, University of Athens, Athens, 15784, Greece
* Corresponding author: zqchen{at}yahoo-inc.com
Received 5 October 2008; revised 14 March 2009
Intrusion detection/prevention systems (IDSs/IPSs) heavily rely on signature databases and pattern matching (PM) techniques to identify network attacks. The engines of such systems often employ traditional PM algorithms to search for telltale patterns in network flows. The observations that real-world network traffic is largely legitimate and that telltales manifested by exploits rarely appear in network streams lead us to the proposal of Fingerprinter. This framework integrates fingerprinting and PM methods to rapidly distinguish well-behaved from malicious traffic. Fingerprinter produces concise digests or fingerprints for attack signatures during its programming phase. In its querying phase, the framework quickly identifies attack-free connections by transforming input traffic into its fingerprint space and matching its digest against those of attack signatures. If the legitimacy of a stream cannot be determined by fingerprints alone, our framework uses the Boyer–Moore algorithm to ascertain whether attack signatures appear in the stream. To reduce false matches, we resort to multiple fingerprinting techniques including Bloom–Filter and Rabin–Fingerprint. Experimentation with a prototype and a variety of traces has helped us establish that Fingerprinter significantly accelerates the attack detection process.
Key Words: pattern matching engine of IDSs/IPSs multi-pattern matching algorithms fingerprinting and digesting techniques intrusion detection process