← 最新论文
💬 NLP

SecureForge: Finding and Preventing Vulnerabilities in LLM-Generated Code via Prompt Optimization

本文介绍了 SecureForge,这是一个自动化流程,它利用漏洞增强型提示的合成语料库来优化系统提示,在保持功能性能的同时显著减少大语言模型生成代码中的安全缺陷,实现了高达 48% 的漏洞减少,并具备向现实场景零样本迁移的能力。

原作者: Houjun Liu, Lisa Einstein, John Yang, Joachim Baumann, Duncan Eddy, Christopher D. Manning, Mykel Kochenderfer, Diyi Yang

发布于 2026-05-12
📖 1 分钟阅读☕ 轻松阅读

原作者: Houjun Liu, Lisa Einstein, John Yang, Joachim Baumann, Duncan Eddy, Christopher D. Manning, Mykel Kochenderfer, Diyi Yang

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

想象一下,你雇佣了一位才华横溢、速度极快的机器人建筑师来为你建造一座房子。你告诉它:“给我建一座安全的房子”,它便照做了。但由于该机器人是从数十亿份旧蓝图(其中一些隐藏着裂缝)中学习而来的,它意外地安装了一扇看似上锁、实则只要用特定力度推一下就会打开的门。

这就是SecureForge所要解决的问题。

以下用通俗易懂的语言,借助类比来解释这篇论文。

问题:“隐形裂缝”

当前的 AI 编程助手非常出色。它们编写代码的速度远超任何人类。但它们有一个危险的坏习惯:它们经常写出看似完美却暗藏安全漏洞的代码。

研究人员发现,即使他们明确告知 AI:“请编写安全的代码,并避免这些特定的安全错误”,AI 仍然会在约**23%**的情况下出错。

这就像一位厨师被告知:“别在这汤里下毒。”厨师很努力,但由于他学习的旧食谱中包含糟糕的配方,他仍然不小心加入了一种有毒成分。汤尝起来没问题(代码通过了测试),但喝下去很危险(存在安全漏洞)。

解决方案:SecureForge

作者们创建了一个名为SecureForge的工具。与其尝试重新训练机器人(既昂贵又困难),他们创建了一份“培训手册”(系统提示),让机器人在开始工作前阅读。

SecureForge 的工作分为三个简单步骤,就像侦探破案一样:

步骤 1:陷阱(发现错误)

首先,SecureForge 要求 AI 执行正常、无害的任务(例如“构建一个登录页面”)。然后,它使用安全扫描仪(数字放大镜)来检查代码。

  • 目标: 找出那些具体、枯燥的请求,这些请求会诱使 AI 犯错。
  • 类比: 这就像一名保安试图用普通钥匙打开银行金库来测试它。他们并不是要闯入,而只是想看看锁在哪里薄弱。

步骤 2:回声室(放大错误)

一旦找到导致错误的一个请求,他们不会就此止步。他们使用一种称为MCMC(马尔可夫链蒙特卡洛)的技术。

  • 它的作用: 它利用那个导致错误的请求,生成数千个略有不同的变体,就像一本“选择你自己的冒险”书,书中的每一条路径都通向同一问题的不同变体。
  • 类比: 想象你发现了一种欺骗保安的方法。与其只使用这一种伎俩,不如写一本书,包含 80,000 种欺骗该保安的不同方法,涵盖所有可能的角度。这就创建了一个庞大的“失败场景”库。

步骤 3:演练(优化指令)

现在,SecureForge 利用这个庞大的失败场景库来教导 AI 如何避免这些错误。它使用遗传算法(一种数字进化过程)来微调 AI 阅读的指令。

  • 工作原理: 它尝试不同版本的“系统提示”(规则手册)。如果某本规则手册能生成安全代码,就保留它;如果导致漏洞,就丢弃它并尝试新的。
  • 类比: 这就像教练进行演练,让运动员反复练习失败,直到他们最终学会完美的站立姿势,从而永远不会摔倒。教练并没有改变运动员的肌肉(AI 的大脑);他们只是改变了战术手册。

结果:更强大、更智能

该论文在可用的最先进 AI 模型(如 GPT-5 和 Claude)上进行了测试。

  • 使用 SecureForge 之前: 即使被告知要安全,AI 仍有约**23%**的时间出现安全错误。
  • 使用 SecureForge 之后: 错误率降低了高达48%
  • 最棒的部分: AI 在其实际工作上并没有变差。它仍然通过了所有编码测试。事实上,它在同时兼顾安全性和实用性方面变得更好了。

为什么这很重要

大多数安全工具试图在代码编写之后捕捉坏代码(就像拼写检查器)。SecureForge 则在 AI 编写任何一行代码之前就改变了它所遵循的指令。

这就像给机器人建筑师一套新的蓝图,上面写着:“记住,在这种特定情况下,务必使用死锁,而不是插销。”机器人不需要被重建;它只需要更好的指令。

关键要点: 你不需要重新训练 AI 就能让它更安全。你只需要找到正确的“提示”(指令),教会它避免那些它自然产生的隐形裂缝。SecureForge 就是能够找到那条完美指令的自动化机器。

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

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

试用 Digest →