← 最新论文
🤖 AI

Locus: Agentic Predicate Synthesis for Directed Fuzzing

Locus 是一种新型代理框架,它通过合成具有语义意义的中间谓词来引导定向模糊测试向目标状态演进,从而显著提高了最先进模糊测试器的效率,并成功发现了此前未被修复的真实世界漏洞。

原作者: Jie Zhu, Chihao Shen, Ziyang Li, Jiahao Yu, Yizheng Chen, Kexin Pei

发布于 2026-07-23
📖 1 分钟阅读☕ 轻松阅读

原作者: Jie Zhu, Chihao Shen, Ziyang Li, Jiahao Yu, Yizheng Chen, Kexin Pei

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

想象一下,你正试图在一座巨大的、不断变化的迷宫深处寻找一个特定的、隐藏的宝藏箱。这不仅仅是一个普通的迷宫;它是一个由计算机代码构成的数字迷宫,而那个“宝藏”是一个秘密缺陷——一个漏洞(bug)——它可能让黑客攻破系统。这就是**定向模糊测试(directed fuzzing)**的世界。你可以把“模糊测试(fuzzing)”想象成向目标投掷数百万支随机飞镖,看看是否能击中某个弱点。通常情况下,你只是盲目地投掷飞镖,寄希望于能撞大运击中一些有趣的东西。但“定向”模糊测试更聪明:你知道宝藏(漏洞)应该在哪里,并且你想投掷那些能直接通往那里的飞镖。

问题在于,这个迷宫非常巨大,通往宝藏的路径往往被一系列复杂的、隐形的门所阻挡。为了通过这些门,你需要满足一长串的条件,比如必须拥有正确的钥匙、戴上正确的帽子,并且站在正确的地板上。如果你投掷的飞镖甚至连其中一个微小的要求都没满足,你就会陷入死胡同。传统的方法试图通过测量你距离宝藏还有多少“步数”来猜测前进的方向,但这就像是仅凭一个只指向“北”而不告诉你前方是否有墙壁阻挡道路的指南针来导航城市一样。这种方法往往过于模糊,难以提供实质性的帮助。

于是有了 Locus,这是由芝加哥大学、马里兰大学、约翰斯·霍普金斯大学和西北大学的研究人员开发的一种新工具。Locus 不仅仅是猜测哪种方向更近,它更像是一个超级聪明、不知疲倦的侦探,它阅读迷宫的地图并写下一系列有用的线索。它弄清楚了要接近宝藏必须采取哪些具体的、有意义的步骤,从而将一个混乱的迷宫变成了一份清晰的清单。

以下是 Locus 的工作原理:它使用一种特殊类型的人工智能(一个“智能体”)来阅读计算机代码,并弄清楚到达漏洞所需的秘密规则。想象一下代码是一份蛋糕食谱,而漏洞只有在你在加入面粉之前加入了糖的情况下才会发生。传统工具可能只会说:“你离搅拌碗更近了!”但 Locus 会说:“停!你还没加面粉呢。如果你现在不加面粉,你就永远无法到达蛋糕爆炸的那一部分。”它将这些规则记录为“谓词(predicates)”——即计算机在进行测试时可以运行的简单检查。如果一个测试输入未通过检查(例如:“尚未添加面粉!”),计算机就会立即停止在这一路径上浪费时间,并尝试其他路径。

研究人员为 Locus 设计了一个聪明的安全网。因为 AI 正在进行思考,它可能会犯错,比如建议一个会意外阻挡宝藏路径的规则。为了防止这种情况,Locus 拥有一个“验证器”来双重检查 AI 创建的每一条规则。它使用一种称为“符号执行(symbolic execution)”的数学方法,来证明新规则不会意外丢弃任何通往漏洞的有效路径。这就像有一个严格的编辑,在把侦探写的每一句话放入最终的故事之前,都会检查其真实性,以确保其无误。

当团队测试 Locus 时,结果令人印象深刻。他们将 Locus 接入了八个现有的“投掷飞镖”工具(模糊测试器),并观察它们如何在现实世界的软件中搜寻漏洞。平均而言,Locus 让这些工具寻找漏洞的速度提高了 41.6 倍。在某些情况下,效果甚至更加惊人:使用 Locus 后,一个工具找到漏洞的速度比不使用时快了 214.2 倍。在此之前,有些工具可能会运行一整天却一无所获;而有了 Locus,它们能在极短的时间内找到同样的漏洞。

团队不仅停留在测试阶段,还利用 Locus 在图像库和压缩工具等流行软件中搜寻真实的、尚未修复的漏洞。他们成功发现了 九个 此前未知的漏洞。其中三个已经被软件开发者确认,他们正在着手进行修复。这表明 Locus 不仅仅是一个理论上的想法;它是一个实用的工具,可以通过在坏人发现漏洞之前先找到它们,从而帮助保护软件安全。

简而言之,Locus 将游戏规则从“盲目投掷飞镖并寄希望于运气”转变为“带着 GPS 和清单投掷飞镖”。它利用人工智能来理解计算机程序的深层逻辑,创建有用的路标来引导搜索,并双重检查自己的工作以确保永远不会误导搜索过程。通过这样做,它将一场几乎不可能完成的数字寻宝之旅变成了一场高效且成功的冒险。

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

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

试用 Digest →