Ghostcommit 攻击在图像中隐藏恶意 AI 指令

概念验证攻击将提示注入隐藏在 PNG 文件中,将常规代码审查变成秘密盗窃的路径。

来源:Malwarebytes Labs 博客

Ghostcommit 是一个概念验证,展示了用于审查软件代码的人工智能助手如何被嵌入图像中的隐藏指令所欺骗。

学术 ASSET 研究小组表明,攻击者可以将指令放入图像文件中,在 AGENTS.md 文件中指向它,并让 AI 编码代理在后续任务中遵循这些指令。

拉取请求基本上是开发人员在将更改添加到软件项目的主版本之前发送的正式“请检查并添加我的更改”请求。人类审核员以及越来越多的人工智能编码工具可能会在更改被接受之前对其进行审核。

虽然人工智能辅助代码审查正在成为日常开发的一部分,但 Ghostcommit 暴露了许多团队没有考虑到的弱点。人工审阅者可以阅读代码并跳过附加的图像。在研究人员的概念证明中,恶意指令隐藏在存储库策略文件引用的 PNG 文件中,而可见的拉取请求看起来很普通。

正如研究人员所证明的,这可以将常规的开发人员工作流程变成窃取秘密的渠道。即使人类审阅者不太可能检查图像,人工智能编码代理也会读取这些隐藏指令。

这种攻击在概念上很简单,但在实践中却很危险。拉取请求引入了一个看起来无害的图像和一个告诉代理信任它的配置文件。当代理稍后执行正常任务时,它会遵循隐藏的指令,读取敏感文件,并以混淆的形式将机密写回到代码中。这为秘密盗窃创造了一条途径,可能会绕过人工审查者和自动扫描仪。

如何保持安全

使用人工智能编码工具的组织应将此视为软件供应链和人工智能代理安全问题。最重要的防御措施是限制对机密的访问、检查非文本附件以及监视 AI 代理是否有异常尝试读取凭据或配置文件。