arXiv cs.CR· Mohsen Iranmanesh, Sina Moradi Sabet, Sina Marefat, Ali Javidi Ghasr, Maxime Newman Nereyabagabo, Kousha Amouzesh, Jaivir Malhi, Vinci Velasco, Alex Chung, Mohammad A. Tayebi·· 2 小时前精选AI 评分78
P2Patch 通过对抗性循环将 C/C++ 与 Java 漏洞修复的独立验证覆盖率提升至 84.7%
P2Patch: Exploit-Guided Vulnerability Repair
AI 导读
该论文提出 P2Patch,一种生成式对抗修复系统,旨在解决大语言模型作为自主智能体进行程序修复时,仅用构建补丁时的证据(如静态警报或单一利用证明)验证补丁有效性的缺陷。系统通过让利用智能体在补丁生成后针对同一漏洞构造不同的利用证明来攻击已修补代码,只有当补丁能阻断所有累积的利用证明时才被视为成功。在 101 个 CVE 主题上的实验显示,即使补丁已阻断原始构建时的利用证明,仍有 41% 的运行中会出现新的确认利用。
相比使用 Claude Code 的单次修复流程,P2Patch 将被保留的独立验证集下的修复闭合覆盖率从 78.1% 提升至 84.7%,并将超越上游的覆盖率从 42.1% 提升至 62.5%。这一提升直接源于其强制要求补丁必须通过独立的、未参与构建过程的评估预言机测试,从而暴露了传统单步验证无法发现的修复缺口。事实层面,该系统在相同验证条件下比近期最先进的代理修复系统在更多攻击路径上确认为已阻断。
推断表明,当前基于单一证据链的自动化修复工具存在系统性误报风险,即看似成功的补丁可能仅规避了特定触发条件而非根本漏洞。猜测是这种对抗性训练机制可能成为未来高安全等级软件供应链的标准配置,但需警惕其计算成本随迭代次数增加而显著上升的问题。
推荐理由
揭示单步验证的修复盲区,指出对抗性测试可将漏洞修复覆盖率从78.1%提升至84.7%,修正对自动化修复可靠性的判断。
来源:arXiv cs.CR · arxiv.org