威胁数据库 漏洞 Agentjacking Attacks

Agentjacking Attacks

网络安全研究人员发现了一种名为 Agentjacking 的新型攻击技术,该技术能够操纵人工智能编码助手在开发人员系统上执行攻击者控制的代码。

此次攻击利用了通过 Sentry 生成的虚假错误报告。Sentry 是一款广泛使用的开源错误跟踪和性能监控平台。研究人员表示,该漏洞源于 Sentry 事件采集机制及其通过模型上下文协议 (MCP) 与人工智能系统集成时存在的根本性架构缺陷。

由于 Sentry 接受任何拥有有效数据源名称 (DSN) 的攻击者发送的任意事件有效载荷,攻击者可以将恶意内容注入错误报告。当 Claude Code 或 Cursor 等 AI 编码助手随后通过 Sentry MCP 服务器检索这些报告时,注入的内容可能会被误判为合法的故障排除指南。

攻击背后的架构缺陷

Agentjacking 的核心在于 MCP 连接的外部服务所造成的信任问题。Sentry MCP 服务器会将事件数据作为可信输出返回给 AI 代理,即使这些数据源自未经核实的来源。

因此,人工智能编码代理无法可靠地判断错误事件是由应用程序的真实故障引起的,还是由攻击者故意注入的。这种无法区分可信内容和恶意输入的能力,使得代理在处理和执行所提供的指令时,存在执行任意代码的风险。

成功的入侵可能导致高度敏感信息泄露,包括环境变量、Git 凭据、私有仓库 URL 和开发者身份数据。值得注意的是,这种攻击不需要网络钓鱼活动、恶意软件部署或事先入侵目标基础设施。

Agentjacking攻击链的工作原理

这次袭击是通过一系列精心策划的阶段展开的:

  • 威胁行为者识别出目标组织的 Sentry DSN,这是一种通常嵌入在网站中的公共只写凭证。
  • 利用暴露的 DSN,通过 POST 请求将恶意错误事件提交到 Sentry 的接收端点。
  • 注入的事件包含精心制作的 Markdown 内容,这些内容嵌入在消息字段和上下文键名称中。
  • 当 Sentry MCP 服务器检索到该事件时,恶意内容会以结构化信息的形式呈现,在视觉上与 Sentry 生成的合法指南非常相似。
  • 随后,开发人员指示 AI 编码助手调查或解决 Sentry 中未解决的问题。
  • AI代理通过MCP查询Sentry,并接收攻击者控制的事件。
  • 恶意指令被视为可信的补救步骤,导致 AI 代理以开发者的权限执行攻击者提供的代码。

为什么这次攻击如此有效

Agentjacking攻击最令人担忧的一点是,攻击者从不直接与受害者的基础设施交互。相反,恶意指令隐藏在看似正常的错误报告中。

当开发者向其人工智能编码代理请求帮助时,被篡改的错误信息会被解读为合法的解决方案建议。然后,人工智能代理会利用开发者自身的权限,在开发者的机器上执行这些指令。

代理劫持尤其危险,因为它针对的是开发者和人工智能助手之间的信任关系。Markdown 注入技术设计得非常逼真,以至于人工智能助手无法区分恶意内容和 Sentry 生成的合法指导信息。

广泛曝光及供应商反应

据报道,研究人员发现了至少 2388 个拥有有效且可注射的 Sentry DSN 的组织,这凸显了该问题的潜在规模。

Sentry公司已承认调查结果,但据报道,该公司认为彻底的技术修复不可行。因此,该公司实施了一种全局内容过滤机制,旨在阻止与此次攻击相关的特定已知有效载荷模式。

人工智能代理成为新的攻击面

Agentjacking 的出现表明,人工智能编码助手正迅速成为一种新的、极具吸引力的攻击目标。攻击者不再针对传统的安全控制措施,而是可以利用组织公开的可信数据流。

该攻击能够绕过许多传统的安全技术,包括端点检测与响应 (EDR) 解决方案、Web 应用防火墙 (WAF)、身份与访问管理 (IAM) 系统、VPN、Cloudflare 防护以及传统防火墙。由于攻击链中执行的每个操作看起来都像是经过授权且合法的,因此安全工具可能无法检测到明显的恶意活动。

随着各组织加速采用人工智能辅助软件开发,Agentjacking 事件有力地提醒我们,对人工智能代理的信任本身可能会成为安全漏洞,因为外部数据源被视为本质上值得信赖。

 

最受关注

正在加载...