论文

具有约束引导理解和反射的自动漏洞利用多代理框架

A Multi-Agent Framework for Automated Exploit Generation with Constraint-Guided Comprehension and Reflection

智能体系统Agent 架构与控制循环

摘要

开源库广泛应用于现代软件开发中,带来了严重的安全漏洞。虽然静态分析工具可以大规模识别潜在的漏洞,但它们通常会生成大量误报率很高的报告。自动漏洞利用生成 (AEG) 是一种很有前景的解决方案,可通过生成漏洞利用来确认漏洞的真实性。然而,基于模糊测试或符号执行的传统 AEG 方法面临路径覆盖和约束求解问题。尽管LLM显示出AEG的巨大潜力,但如何有效地利用它们来理解漏洞并生成相应的漏洞利用仍然是一个悬而未决的问题。为了应对这些挑战,我们提出了 Vulnsage,一个 AEG 的多代理框架。 Vulnsage 通过将复杂的 AEG 流程分解为多个专门的子代理来模拟人类安全研究人员的工作流程:代码分析器代理、代码生成代理、验证代理和一组反射代理,由中央主管通过迭代周期进行编排。给定一个目标程序,代码分析器代理会执行静态分析以识别潜在的漏洞并收集每个漏洞的相关信息。然后,代码生成代理利用 LLM 生成候选漏洞利用程序。验证代理和反射代理形成反馈驱动的自我优化循环,该循环使用执行跟踪和运行时错误分析来迭代改进漏洞利用或推理误报警报。实验评估表明,与 \explodejs 等最先进的工具相比,Vulnsage 成功生成的漏洞利用次数多了 34.64%。此外,Vulnsage在现实场景中成功发现并验证了146个零日漏洞,展示了其辅助软件供应链安全评估的实际有效性。