最新消息:关注人工智能 AI赋能新媒体运营

Anthropic Claude Code 设计问题,可被 MCP 劫持窃取 OAuth 凭证

科技资讯 admin 浏览

安全研究人员发现,Anthropic 的 Claude Code 存在设计漏洞,可能被攻击者利用进行 MCP 劫持,窃取其 OAuth 凭证,而开发者可能毫无察觉,并通过供应链攻击扩大受影响范围。

该漏洞源于 Claude Code 的配置机制与扩展架构设计缺陷,涉及其 MCP 令牌的多个高风险特性:凭据以明文形式存储、可在多个会话中重复使用、支持自动刷新,且服务器端无法追溯令牌来源(无法识别令牌是否来自攻击者控制的代理服务器)。

首先,Claude Code 将 MCP 服务器的配置和 OAuth 令牌以明文形式保存在用户本地目录下的 ~/.claude.json 文件中。攻击者可通过安装恶意 NPM 包,在 postinstall 脚本中修改该文件,将合法的 MCP 服务器地址篡改为攻击者控制的代理服务器地址。同时,攻击者会修改相关标志位,使系统误认为用户已手动确认“信任该目录”,从而绕过 Claude Code 的安全提示窗口。此阶段属于中间人攻击,对开发者而言,Claude Code 仍正常运行,难以察觉已被监控。

一旦配置被篡改,Claude Code 的所有 MCP 通信都将经过攻击者的服务器,包括 OAuth 令牌等敏感信息。攻击者获取令牌后,即可绕过密码验证和多因素认证,直接访问开发者账户。即使开发者手动恢复正确地址或更换令牌,恶意脚本仍可在下次运行时自动将其改回。最终,攻击者可利用受害者的权限,在其 GitHub 仓库中植入恶意代码,进一步影响更大范围的下游用户。

然而,Anthropic 官方认为该问题不属于其安全修复范围,理由是攻击者必须先获得用户本地系统的执行权限(例如通过安装恶意 NPM 包)。但研究人员指出,随着 AI 代理频繁接触敏感数据,本地权限的边界正逐渐模糊,用户应加强对 ~/.claude.json 文件变更的监控,并警惕异常网络流量。