VulMatch:通过签名进行二进制级漏洞检测

摘要:在现实世界的软件产品中,类似的漏洞因为代码复用而重复出现,特别是在广泛复用的第三方代码和库中。检测重复的漏洞,如1-day和N-day漏洞,是一项重要的网络安全任务。不幸的是,目前的方法在性能上存在问题,因为它们检测的是补丁的存在而不是漏洞的存在,并直接从二进制代码推断漏洞签名。在本文中,我们提出了VulMatch,以提取精确的与漏洞相关的二进制指令,生成与漏洞相关的签名。VulMatch基于二进制签名检测漏洞的存在。与之前的方法不同,VulMatch通过利用源代码和二进制代码来准确定位与漏洞相关的指令。我们的实验使用了七个开源项目中的1000多个易受攻击的实例。VulMatch在性能上显著优于基线工具Asm2vec和Palmtree。除了基线工具的性能优势外,VulMatch通过提供漏洞检测过程中的可解释原因,提供了更好的功能。我们的实证研究表明,VulMatch能够检测到现有的先进工具无法检测到的精细粒度漏洞。我们在商业固件上的实验证明了VulMatch能够在实际场景中发现漏洞。

作者:Zian Liu, Lei Pan, Chao Chen, Ejaz Ahmed, Shigang Liu, Jun Zhang, Dongxi Liu

论文ID:2308.00288

分类:Cryptography and Security

分类简称:cs.CR

提交时间:2023-08-02

PDF 下载: 英文版 中文版pdf翻译中