2006 · 137 citations · 28 references
ComputingComputer EngineeringComputer ScienceCompilersNatural Language ProcessingNetwork SecurityInternet Protocol SuiteIntrusion DetectionNetwork ProtocolsNetwork Traffic AnalysisParsingSyntactic AnalysisDeclarative SemanticsDeclarative TransformationNetwork Intrusion DetectionNetwork-based Intrusion DetectionProtocol Reverse Engineering
A key step in the semantic analysis of network traffic is to parse the traffic stream according to the high-level protocols it contains. This process transforms raw bytes into structured, typed, and semantically meaningful data fields that provide a high-level representation of the traffic. However, constructing protocol parsers by hand is a tedious and error-prone affair due to the complexity and sheer number of application protocols.This paper presents binpac, a declarative language and compiler designed to simplify the task of constructing robust and efficient semantic analyzers for complex network protocols. We discuss the design of the binpac language and a range of issues in generating efficient parsers from high-level specifications. We have used binpac to build several protocol parsers for the "Bro" network intrusion detection system, replacing some of its existing analyzers (handcrafted in C++), and supplementing its operation with analyzers for new protocols. We can then use Bro's powerful scripting language to express application-level analysis of network traffic in high-level terms that are both concise and expressive. binpac is now part of the open-source Bro distribution.
28
Gerard J. Holzmann · IEEE Transactions on Software Engineering · 1997 · 3.8K citations
Snort - Lightweight Intrusion Detection for Networks
Martin Roesch · 1999 · 3.1K citations
Bro: a system for detecting network intruders in real-time
Vern Paxson · Computer Networks · 1999 · 2.4K citations
Yacc : Yet Another Compiler Compiler
S. C. Johnson, Murray Hill · 1978 · 1.2K citations
Domain names - implementation and specification
Paul V. Mockapetris · 1987 · 1.2K citations