论文

EvoRepair:通过基于经验的自我进化增强漏洞修复代理

EvoRepair: Enhancing Vulnerability Repair Agents Through Experience-Based Self-Evolution

上下文与知识记忆Agent记忆

摘要

大语言模型(LLM)在自动漏洞修复(AVR)方面表现出了良好的前景,但它们仍然面临一些局限性,包括缺乏漏洞内经验积累和缺乏跨漏洞经验复用。因此,LLM 在迭代修复过程中可能会反复犯类似的错误,并且没有充分利用历史漏洞中宝贵的修复知识。为了应对这些挑战,我们提出了 EvoRepair,这是第一个基于经验的自我进化 AVR 代理框架,使 LLM 能够在长期漏洞修复中积累、完善和利用特定领域的知识。 EvoRepair 遵循循环学习和修复过程,检索相关的过去经验来指导修复,从修复轨迹中提取新经验,并使用质量感知评分更新经验库。我们使用 GPT-5-mini 在 PATCHEVAL 和 SEC-bench 上针对 12 个代表性漏洞修复基线评估 EvoRepair。结果显示,EvoRepair 取得了最佳的整体性能,在 PATCHEVAL 上达到 93.47%,在 SEC-bench 上达到 87.00%,总体达到 90.46%。特别是,EvoRepair 在 PATCHEVAL 和 SEC-bench 上的性能分别优于最新的基于 LLM 的基线 LoopRepair 39.56% 和 33.50%,并且超过 IntentFix 70.86% 和 50.50%。在这两个基准测试中,EvoRepair 总体上也超过了最近的自我进化代理 Live-SWE-Agent 6.98%。 VUL4J 上的其他传输实验进一步证明了 EvoRepair 跨模型、编程语言和数据集的稳健性。这些发现表明,基于经验的自我进化大大增强了代理 AVR,并超越了现有的自我进化技术。