Publication | Closed Access
Patch based vulnerability matching for binary programs
71
Citations
40
References
2020
Year
Unknown Venue
Software MaintenanceEngineeringBinary X-raySoftware EngineeringSource Code AnalysisBinary-level Function MatchingSoftware AnalysisFormal VerificationHardware SecurityFuzzingComputer EngineeringComputer ScienceStatic Program AnalysisSoftware DesignSecurity Testing MethodSoftware SecurityProgram AnalysisSoftware TestingVulnerable FunctionFormal MethodsBinary ProgramsSystem Software
The binary-level function matching has been widely used to detect whether there are 1-day vulnerabilities in released programs. However, the high false positive is a challenge for current function matching solutions, since the vulnerable function is highly similar to its corresponding patched version. In this paper, the Binary X-Ray (BinXray), a patch based vulnerability matching approach, is proposed to identify the specific 1-day vulnerabilities in target programs accurately and effectively. In the preparing step, a basic block mapping algorithm is designed to extract the signature of a patch, by comparing the given vulnerable and patched programs. The signature is represented as a set of basic block traces. In the detection step, the patching semantics is applied to reduce irrelevant basic block traces to speed up the signature searching. The trace similarity is also designed to identify whether a target program is patched. In experiments, 12 real software projects related to 479 CVEs are collected. BinXray achieves 93.31% accuracy and the analysis time cost is only 296.17ms per function, outperforming the state-of-the-art works.
| Year | Citations | |
|---|---|---|
Page 1
Page 1