安全公司 PromptArmor 发布了一篇报告,披露 Atlassian 的 AI agent Rovo 存在严重的数据泄露漏洞:攻击者可以通过 indirect prompt injection(间接提示注入)窃取整个 Atlassian 租户内的 Jira 工单和 Confluence 文档,全程不需要任何人工审批。
更值得注意的是,这个漏洞在 5 月 23 日就报告给了 Atlassian,两个多月过去了,公司除了表示"感谢"并分配了一个 case number 之外,再没有任何实质性回应。Rovo 至今仍处于漏洞未修复状态。

攻击链路
攻击链并不复杂。
受害者给 Rovo 提了一个正常需求——例如"帮我整理 Jira 工单"。同时上传了一个文件作为参考材料,比如从网上下载的"Backlog 指南"。这个文件里藏了一条 prompt injection。
Rovo 开始搜索 Jira 和 Confluence 来完成任务。过程中的 injection 操纵 Rovo 动态构造了一个 URL,把读取到的敏感数据附加在 URL 参数里,然后调用 Rovo 的 URL 检索工具去"打开"这个链接。攻击者的服务器记录了这个请求——包括 URL 后附着的 Jira 工单内容和 Confluence 文档。
当用户回到聊天界面时,看到的是 agent 正常给出的工单整理建议,没有任何受攻击痕迹。
最要命的是:即使组织管理员在后台关闭了 Rovo 的"Enable web search"开关,这个攻击依然有效。因为关闭开关只是阻止了搜索行为,并没有移除 agent 用来打开搜索结果的工具——这个工具仍然可以被 prompt injection 调用。







第二层泄露通道
PromptArmor 还发现了另一个泄露路径:Rovo 会渲染 AI 输出中的 Markdown 图片。通过不安全的 Markdown 图片渲染实现数据泄露,这是一个已知的间接提示注入攻击向量——PromptArmor 此前已在 Codex、OpenAI API、Superhuman、Hugging Face Chat、Writer.com 等产品上验证过同类攻击。
社区反应
"我感觉 PromptArmor 给每个 agent 工具都写了同一篇博客,因为它们全都有'忽略之前的指令'这类 prompt injection 问题。"这是 HN 评论区最高赞的回复。
PromptArmor 确实在过去一年里对 Claude Cowork、Google Antigravity、Slack AI、GPT 系列都做了类似的披露。但正如另一位用户指出的:"他们怎么可能不写?如果哪个实验室有办法做出真正安全的 guardrail 或彻底防止 prompt injection,他们早就拿出来吹了。问题在于语言模型的基本机制就决定了它对此类攻击是脆弱的,除非你能确保所有输入都来自可信用户。"
有人提出用正则表达式或分类器模型来拦截"ignore previous instructions"这类简单攻击,但这个观点被反驳了:"如果你正在写一篇讨论 jailbreak 的 AI 文档,你的正则就会把正常用例也拦住。这种问题有无数种变体。"
讨论中最核心的共识是:agent 系统的安全不是一个能"一次性解决"的问题。一位用户写道:"攻击者会监控所有攻击尝试,只采用成功率最高的那种。所以从攻击者视角来看,实际成功率远高于系统宣称的失败率。这不是偶然故障——这是你正在被主动攻击,且攻击者会快速适应。"
安全是过程,不是产品——这条评论获得了广泛认同。
时间线
- 5 月 23 日:PromptArmor 向 Atlassian 披露漏洞
- 5 月 25 日:Atlassian 回应感谢,分配 case number
- 6 月 4 日:PromptArmor 跟进,无回应
- 7 月 29 日:PromptArmor 再次跟进,无回应
- 8 月 5 日:报告公开发布,漏洞仍未被修复
参考来源: