论文
在执行时通过设计应用安全性:受控安全要求如何影响人工智能生成代码的安全性
Applying Security by Design at the Point of Execution: How Governed Security Requirements Affect the Security of AI-Generated Code
摘要
设计安全要求在编写代码之前定义安全需求。安全代码基准测试通常测量相反的情况:代理在没有要求的情况下接收任务,并通过它未见过的安全测试进行评分。我们测量了从受设计的安全知识库 (SbD-ToE) 中选择并通过模型上下文协议 (MCP) 服务器交付的安全需求在执行点提供给生成器时发生的变化。在由语言模型评委评分的 DualGauge 上,我们运行了 59 个 Python 任务:通过所有安全测试的任务比例从 44.1% 上升到 78.0%,通过安全测试的比例从 77.4% 上升到 93.0%。在容器中运行功能测试和真实漏洞的 BaxBench 上,我们运行了 28 个后端场景:在功能正确的解决方案中,没有成功利用的比例从 65% 上升到 86%,与作者的 Oracle 安全提醒 (85%) 相当,他们称之为不切实际的上限;在不知道测试的情况下,需求交付就达到了。这项研究有其局限性。这 预先指定的联合安全和功能指标在这两个基准上都没有显着改善。根据受控要求编写的代码更加严格,并且它未能通过修复任务从未声明的值的功能测试;我们在事后分析中逐案归因这些失败。每个实验针对每个任务使用一个模型和一代。需求来自作者的开源手册;我们不评估其完整性。在执行点交付的受控安全要求似乎可以提高生成代码的安全性。当前的基准测试无法判断该代码是否满足适用的安全要求,只能判断它是否显示了评估程序旨在检测的弱点。我们建议衡量是否符合适用要求。