中文

VulCoCo:一种简单而有效的漏洞代码克隆检测方法

软件工程 2025-07-23 v1

摘要

代码重复是现代软件开发中常见的现象,但也会在开发人员不知情的情况下传播漏洞。能够保留已知漏洞逻辑的代码片段称为漏洞代码克隆(VCC)。检测这些VCC是一项关键但具有挑战性的任务。现有的VCC检测工具常依赖于语法相似性,或产生粗糙的漏洞预测且缺乏清晰的解释,限制了其实际应用价值。本文提出了VulCoCo,一种轻量且可扩展的方法,结合基于嵌入的检索与大语言模型(LLM)验证。我们从已知漏洞函数集合出发,从大型语料库中检索语法或语义相似的候选函数,并使用LLM评估这些候选函数是否保留了漏洞。鉴于缺乏可复现的漏洞代码克隆基准,本文首先构建了一个涵盖各种克隆类型的合成基准。我们的实验表明,VulCoCo在Precision@k和平均精度(MAP)方面优于先前的领先方法。在此基础上,我们还通过向284个开源项目提交400个拉取请求(PR)展示了VulCoCo的实际应用效果。其中75个PR被合并,15个PR导致 newly published CVE。我们还提供了洞见,以激励未来工作进一步提高漏洞代码克隆检测的精度。

关键词

引用

@article{arxiv.2507.16661,
  title  = {VulCoCo: A Simple Yet Effective Method for Detecting Vulnerable Code Clones},
  author = {Tan Bui and Yan Naing Tun and Thanh Phuc Nguyen and Yindu Su and Ferdian Thung and Yikun Li and Han Wei Ang and Yide Yin and Frank Liauw and Lwin Khin Shar and Eng Lieh Ouh and Ting Zhang and David Lo},
  journal= {arXiv preprint arXiv:2507.16661},
  year   = {2025}
}