Lifting Network Protocol Implementation to Precise Format Specification with Security Applications
Qingkai Shi, Junyang Shao, Yapeng Ye, Mingwei Zheng and, Xiangyu Zhang

TL;DR
This paper introduces a static analysis approach using abstract interpretation to accurately infer protocol formats, significantly improving coverage and security applications like fuzzing and intrusion detection.
Contribution
It presents a novel static analysis method with an abstract format graph for high-coverage, precise protocol format inference, outperforming existing dynamic techniques.
Findings
Inferred formats achieve >95% precision and recall within one minute.
Enhanced fuzzing coverage by 20% to 260%.
Discovered 53 zero-day vulnerabilities with 47 CVEs assigned.
Abstract
Inferring protocol formats is critical for many security applications. However, existing format-inference techniques often miss many formats, because almost all of them are in a fashion of dynamic analysis and rely on a limited number of network packets to drive their analysis. If a feature is not present in the input packets, the feature will be missed in the resulting formats. We develop a novel static program analysis for format inference. It is well-known that static analysis does not rely on any input packets and can achieve high coverage by scanning every piece of code. However, for efficiency and precision, we have to address two challenges, namely path explosion and disordered path constraints. To this end, our approach uses abstract interpretation to produce a novel data structure called the abstract format graph. It delimits precise but costly operations to only small regions,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Network Packet Processing and Optimization · Network Security and Intrusion Detection
