一句话总结
10 月 29 日,Anthropic 官方 Claude Code 扩展的 2.1.313 版本被投毒——攻击者把它冒充成官方身份,经 Cursor 自己的扩展市场通过自动更新分发出去约 11 小时,安装后会在开发者电脑里植入 SSH 后门、设置开机持久化、并把主机信息回传给攻击者服务器。Cursor 称最多 5000 名用户受影响,Anthropic 次日发布 2.1.314 修复版。更麻烦的是:卸载或升级扩展并不会清除已经植入的后门,需要手动排查。
数据来源:Cursor 官方安全公告《Claude Code extension security notice》(2026-10-29)、OpenSourceMalware 分析、The Hacker News、StepSecurity、Phorion 等多家安全机构的独立分析。
发生了什么:一条「假更新」的 11 小时

时间线很清晰:
- 10 月 29 日约 2:27 AM – 1:35 PM(太平洋时间):投毒版 2.1.313 在 Cursor 的扩展市场上线,并在约 11 小时的窗口内被推送给开启了自动更新的用户。
- 该版本挂在
anthropic.claude-code这个官方扩展 ID 下,而不是一个名字相似的「山寨扩展」——这也是它最可怕的地方:用户看到的是「官方 Claude Code 更新到了新版本」,毫无异常。 - 攻击者在一个合法扩展代码的最前面插入了 66 行恶意 loader(OpenSourceMalware 联合创始人 Jenn Gile 的原话:「它自称是 anthropic.claude-code 2.1.313,但主 JS bundle 里有一段 66 行的恶意加载器,被插在合法扩展代码之前」)。
- 10 月 30 日:投毒版被下架,Anthropic 发布 2.1.314 修复版到 Open VSX 和微软 VS Code Marketplace。
Cursor 在公告里明确说:这个版本「不是 Anthropic 开发的」,且「不影响从 cursor.com/marketplace 下载的其他扩展、Grok Bot、Grok 或其他 SpaceXSI 产品」。
攻击链拆解:从「投毒」到「回传情报」

这条链只有 5 步,但每一步都不依赖用户犯错——用户只要开着自动更新就中招:
- 篡改扩展:伪造一个 2.1.313 版本,在合法代码前插入恶意 loader。
- 上架市场:冒充官方身份
anthropic.claude-code上架到 Cursor 市场(Cursor 的市场会镜像 Open VSX)。 - 自动更新分发:11 小时窗口内,被自动更新推到约 5000 名用户。
- 植入后门:向
~/.ssh/authorized_keys写入攻击者公钥(标签伪装成svc-telemetry)、尝试开启 SSH、建立反向隧道、设置持久化。 - 回传情报:把主机信息发回攻击者服务器。
后门具体做了什么

根据 Cursor 与多家安全机构的分析,恶意 loader 在编辑器启动、webview 打开时激活,做了四件事:
- 写 SSH 公钥:把攻击者控制的公钥追加到
~/.ssh/authorized_keys,标签写成svc-telemetry让它看起来无害。 - 开启反向隧道:尝试让受害者机器通过 SSH 变成「攻击者能连回来」的状态,连接到
134.209.82[.]225。 - 设置持久化:在 Windows 建计划任务、Linux 建 crontab、macOS 建 LaunchAgent,保证重启后后门还在。
- 回传主机情报:通过未加密 HTTP 发到
134.209.82[.]225:8099/beacon,内容包括——公网 IP(来自 api.ipify.org)、主机名、本地用户名、操作系统与 CPU 架构、主目录与工作目录、全局 Git 邮箱,以及最多 40 个环境变量名(只收集名字,收集那些包含KEY、TOKEN、SECRET、PASS、AWS、GCP的变量名)。
有一个「没那么糟」的细节值得写清楚:开启本机 SSH 服务需要管理员权限,而这个扩展在大多数 macOS 和 Windows 主机上没有这个权限,所以 Cursor 判断「在这些机器上,攻击者无法通过隧道真正登录进来」。但公钥、持久化、信息回传这几步仍然会照常执行——所以 Cursor 明确说:「无论如何,请照下面步骤自查」。
影响范围与「官方身份」的真正危险

- 受影响人数:Cursor 官方口径是「最多 5000 名用户」,并称会直接联系这些人。
- 分布范围:恶意版本只在 Cursor 的市场分发,没有证据表明它到达了 Open VSX 或微软官方 VS Code Marketplace——从这两个地方安装 Claude Code 的用户目前被认为不受影响。
- 真正的危险不在代码有多复杂,而在「官方身份」:这不是一个拼错名字的山寨扩展,而是官方扩展 ID 下的一个投毒版本。安全研究员 Paul McCarty 的一句话点破:「这一次没有『冒充』可供识别——这就是 Cursor 官方市场里的官方 Claude Code 扩展,一个被投毒的 listing 把 SSH 后门推给了最多 5000 用户。」
值得注意的是,这一事件不是利用了 Claude Code 的任何漏洞,而是攻击者通过某种方式拿到了向 Cursor 市场发布扩展的能力(Cursor 已暂时关闭市场、审计访问权限,并称没有发现其他被篡改的扩展)。攻击者具体如何做到,目前官方尚未公开。
如果你可能中招:自查清单
Cursor 和多家机构的补救建议可以汇总成下面几步。核心原则是:升级到 2.1.314 只是第一步,它不会清除已经落地的后门。
- 查 SSH 公钥:打开
~/.ssh/authorized_keys,看有没有一行注释为svc-telemetry的条目;有就删掉。 - 查持久化:macOS 看
~/Library/LaunchAgents里有没有可疑的 LaunchAgent;Windows 看计划任务;Linux 看crontab -l。 - 查反向隧道:看有没有连到
134.209.82.225的异常 SSH/网络连接。 - 改凭证:凡是在这台机器上出现过的账号、token、密钥、SSH 密钥,都从一台可信的机器上轮换一遍——因为环境变量名已经泄露了「你配了哪些云厂商 / CI / 凭证类型」。
- 升级扩展:确认当前版本是 2.1.314 或更新。
为什么说这不是孤立事件
投毒事件披露前大约一周,另一条供应链攻击刚刚发生:攻击者劫持了 OVHcloud 官方 CLI 工具(ovh/ovhcloud-cli)的五个已发布版本的二进制文件,换成窃密木马——手法是入侵了一位合法贡献者「HassenBF」的 GitHub 账号(属于一个叫 GlassWorm 的行动)。
两件事放在一起看,趋势很清楚:攻击者正在把目标从「攻破某个应用」转向「污染你信任的供应链」。对开发者来说,最有价值的习惯不是「别乱装扩展」,而是——关键工具的更新窗口里,多留一个心眼;把自动更新带来的『省心』,和供应链攻击带来的『无感中招』,当成同一枚硬币的两面。
图片出处:封面与攻击链示意图由 UU AI Hub 自制;其余配图分别取自 The Hacker News、Cursor 官方安全公告、OpenSourceMalware 分析页原文截图。