← 最新论文
💻 computer science

Program Analysis Guided LLM Agent for Proof-of-Concept Generation

本文提出了名为 PAGENT 的新型混合方法,通过结合轻量级静态分析与基于净化器的动态分析指导来增强大语言模型代理,从而显著提升了自动化生成漏洞概念验证(PoC)的成功率。

原作者: Achintya Desai, Md Shafiuzzaman, Wenbo Guo, Tevfik Bultan

发布于 2026-04-10
📖 1 分钟阅读☕ 轻松阅读

原作者: Achintya Desai, Md Shafiuzzaman, Wenbo Guo, Tevfik Bultan

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇论文介绍了一个名为 PAGENT 的新工具,它的任务是帮程序员“抓虫子”——具体来说,是自动制造一个能触发软件漏洞的“概念验证”(PoC)输入。

为了让你更容易理解,我们可以把整个过程想象成在一个巨大的、复杂的迷宫里寻找一个隐藏的陷阱

🕵️‍♂️ 核心故事:寻找迷宫里的陷阱

想象一下,你有一个巨大的迷宫(这就是软件源代码),里面有一个隐蔽的陷阱(漏洞)。

  • 传统方法(以前的工具): 就像派一个只有地图但没眼睛的人进去,或者派一个拿着手电筒但只会乱撞的人。他们要么走得太慢(扩展性差),要么总是把墙上的裂缝误认为是陷阱(误报),或者根本找不到路。
  • 纯 AI 方法(大语言模型 LLM): 就像一个博学但有点“爱做梦”的探险家。他读过很多书,知道迷宫的大概样子,但他经常瞎编(幻觉)。他可能会自信地告诉你:“陷阱在左边!”然后你跑过去一看,那里只有一堵墙。虽然他很聪明,但如果没有向导,他很容易迷路或犯错。

🚀 PAGENT 是什么?(三位一体的探险队)

PAGENT 聪明就聪明在它没有只依赖那个“爱做梦”的探险家,而是组建了一支三人探险队,分工合作:

1. 静态分析向导(Static Analysis):画地图的专家

  • 角色: 这是一个严谨、不会做梦的工程师。
  • 任务: 在探险家进迷宫之前,他先快速扫描整个迷宫的蓝图(源代码)。他不需要走进迷宫,就能画出哪些路是通的,哪些死胡同是走不通的。
  • 比喻: 他给探险家一张精准的“寻宝图”,上面标明了:“陷阱可能在第 3 层,而且你必须先经过‘红色大门’才能到达。”
  • 作用: 防止探险家(AI)在完全错误的方向上浪费时间,告诉他:“别瞎猜了,根据图纸,陷阱就在这附近。”

2. 探险家(LLM Agent):负责推理和制造钥匙

  • 角色: 那个博学但爱做梦的 AI 大模型。
  • 任务: 拿到“寻宝图”后,他开始思考:“既然要经过红色大门,那我需要一把什么样的钥匙(输入数据)才能打开它?”他负责编写具体的代码或数据,试图触发那个陷阱。
  • 作用: 利用他的创造力,把地图上的线索变成实际的行动。

3. 动态分析裁判(Dynamic Analysis):现场测试员

  • 角色: 一个拿着秒表和监控摄像头的裁判。
  • 任务: 当探险家造好“钥匙”并尝试打开门时,裁判会立刻测试。
    • 如果门没开(没触发漏洞),裁判会告诉探险家:“你走错了,你刚才只走到了第 2 层,还没到第 3 层,而且你走的那条路覆盖率只有 10%。”
    • 如果门开了(触发漏洞),裁判就大喊:“成功了!”
  • 比喻: 这就像试错反馈。探险家说:“我觉得这把钥匙能行。”裁判说:“不行,这把钥匙只打开了前门,没打开后门。再试一把。”
  • 作用: 纠正探险家的错误,让他不断调整策略,直到成功。

🔄 他们是怎么合作的?(循环迭代)

这个过程就像一个**“猜测 - 测试 - 修正”**的循环:

  1. 向导给探险家看地图,指出陷阱大概在哪。
  2. 探险家根据地图,造出一个“钥匙”(PoC 输入)。
  3. 裁判拿着钥匙去试。
    • 失败了? 裁判告诉探险家:“你离目标还差得远,你只覆盖了 10% 的路径。”
    • 探险家听到反馈,结合地图,重新思考:“哦,原来我刚才选错了门,我应该选那个蓝色的门。”
    • 探险家修改“钥匙”,再次尝试。
  4. 直到裁判宣布成功,或者尝试次数用完。

🏆 为什么 PAGENT 这么厉害?

论文通过实验证明,这种“向导 + 探险家 + 裁判”的组合拳非常有效:

  • 更准: 即使使用一个比较弱的开源 AI 模型(DeepSeek),加上这个系统,它的成功率也比那些最强的闭源商业 AI(如 GPT-5)高出很多(提升了 132%)。
  • 更省: 因为用了开源模型,成本只有商业模型的几十分之一。
  • 能发现“漏网之鱼”: 有趣的是,PAGENT 甚至能发现一些已经修补了漏洞的代码中依然存在的隐藏漏洞(就像在修好的墙里发现了新的裂缝)。这是因为裁判的反馈让探险家去探索了代码的其他角落,意外发现了新陷阱。

💡 总结

简单来说,PAGENT 就是给那个“爱做梦”的 AI 侦探配了一个严谨的地图绘制员和一个严格的现场裁判

  • 以前,AI 只能靠猜,容易猜错。
  • 现在,AI 有地图指引方向,有裁判实时纠正错误。

结果就是,它能更高效、更准确地帮程序员找到软件里的安全漏洞,并制造出能证明漏洞存在的“证据”(PoC),让软件变得更安全。这就像把“盲人摸象”变成了“有导航、有反馈的精准寻宝”。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →