一句话:构建多安全补丁CVE数据集与两级分类体系,并实现原型PatchKin,显著提升同仓库与跨仓库缺失安全补丁的发现召回率。
安全补丁是修复软件漏洞的主要机制,但修复可能增量完成、跨维护分支传播或在相关仓库间复制,导致漏洞记录中缺失补丁,进而使下游用户和工具应用不完整或错误的修复。由于多补丁现象的成因尚不清晰,系统发现缺失补丁仍很困难。本文构建了包含6,053个多补丁CVE、16,260个安全补丁的数据集,并归纳出含6个类别、16个子类的两级分类体系。在该分类体系指导下,作者开发了原型工具PatchKin,用于发现完整的安全补丁。在300个多补丁CVE上,PatchKin取得同仓库召回率0.910、跨仓库召回率0.829,优于代表性补丁定位基线。
Security patches (SPs) are the main mechanism for fixing software vulnerabilities. However, fixes may be completed incrementally, propagated across maintained branches, or replicated across related repositories. Missing such SPs from vulnerability records can lead downstream users and tools to apply incomplete or incorrect fixes, motivating better coverage of SPs for disclosed vulnerabilities. However, it remains difficult because the underlying causes of the multi-SP phenomenon are still poorly understood. In this work, we construct a dataset of 6,053 multi-SP CVEs with 16,260 SPs, and derive a two-level taxonomy with 6 categories and 16 subcategories. Guided by this taxonomy, we develop PatchKin, a prototype for discovering comprehensive SPs. On 300 multi-SP CVEs, PatchKin achieves 0.910 same-repository recall and 0.829 cross-repository recall, outperforming representative patch-localization baselines.