Agentjacking:一条假报错就能劫持你的 AI 编程代理,2388 家公司中招
你以为 AI 编程助手只是在帮你修 bug,但它可能正在执行黑客塞进来的指令。
三个关键信息
安全公司 Tenet Security 在 6 月披露了一种名为「Agentjacking」的新型攻击,能让攻击者通过 Sentry 错误追踪系统劫持 AI 编程代理。 攻击原理并不复杂:Sentry 的数据源名称(DSN)是一个公开的、只写权限的凭证,通常嵌入在网站前端代码中,任何人都能找到。攻击者获取目标的 DSN 后,向 Sentry 的数据接收端点发送一条伪造的错误事件,在其中嵌入恶意指令。当 AI 编程代理读取这条「错误」时,会把其中的恶意指令当作正常的修复建议来执行——本质上这是一种间接提示注入攻击。
研究人员测试了市面上最主流的 AI 编程代理,成功率高达 85%。 受影响的工具包括 Claude Code、Cursor 和 Codex 等。攻击成功后,可以窃取环境变量、Git 凭证、私有仓库地址和开发者身份信息,完全不需要钓鱼邮件或提前入侵服务器。研究人员扫描后发现至少 2388 个组织暴露了可被注入的有效 DSN。
这暴露了 AI 编程代理的一个结构性缺陷:它们无法区分可信指令和恶意输入。 AI 编程代理通过 MCP(模型上下文协议)等接口连接 Sentry 这样的外部工具,但这些接口缺乏信任边界验证。代理看到一条来自 Sentry 的错误消息,就会默认信任其中的内容并执行,完全没有验证这条消息到底是不是真的由 Sentry 生成。攻击者利用的正是这个信任链上的断裂。
王斗视角
这事儿最讽刺的地方在于:开发者让 AI 代理自动帮忙修 bug,结果这个「自动修 bug」的过程本身就是一个 bug。Sentry 的 DSN 是公开的——去任何一个网站的前端源码里翻翻就能找到——而 AI 编程代理拿到一条「错误报告」就二话不说开始执行里面的指令。85% 的成功率意味着每 6 个代理里有 5 个会上当,2388 个暴露的组织里说不定就有你正在用的那家 SaaS 的后端。这不是某个工具的 bug,是整个 AI 代理生态在「信任」这件事上集体裸奔。大家都在喊 Agentic AI 是未来,但连「这条消息到底是谁发的」都验证不了,这个未来建在流沙上。
来源:The Hacker News — Agentjacking Attack Tricks AI Coding Agents Into Running Malicious Code
