10 月 29 日,Cursor 的 VS Code 扩展市场里,macOS 和 Windows 版的 Anthropic.claude-code 2.1.312 和 2.1.313 在架了约 11 个小时。 扩展 ID 和发布者名都是真的;被换掉的只有包里的代码。Cursor 官方安全公告
据 StepSecurity 援引 Cursor 的初步数字,最多约 5000 名 Cursor 用户拿到了这版。 Cursor 随后下架、关停整个市场、轮换密钥、重建上线。StepSecurity
市场回来了。但这次最该记住的,不是“别装陌生插件”——恶意包用的就是真扩展的 ID。StepSecurity 把样本拆开看,篡改方式是在干净的 extension.js 前面拼了一段约 7 KB 的加载器,后面 3.6 MB 的内容逐字节没动。StepSecurity
它不需要你打开 Claude,也不需要你发一句话,扩展一加载就执行。换句话说,你平时用来判断“这个插件靠不靠谱”的那些信号,这次几乎全部失灵。
最反直觉的一个坑,是把扩展 ID、发布者名和认证徽章当成来源证明。Cursor 自己的文档写得很直白:同一个 publisher.extension 名字,在 Open VSX 和微软市场上可能指向不同的发布者或代码;发布者认证“确认的是发布者身份”,只是信任的一层。 攻击者不需要伪造 Anthropic 的名字,只需要拿到市场的发布权限。据 StepSecurity 的更新说明,Anthropic 方面澄清,不是自家系统被攻破,而是有人用 Cursor 市场的权限上传了篡改包。Cursor 扩展文档StepSecurity
第二个坑更隐蔽:把版本号当体检报告。现在装的是 2.1.314,不代表没中过招;装过 2.1.312,也不代表一定有事。StepSecurity 指出,Open VSX 上的 2.1.312 是另一个干净产物;只有 10 月 29 日太平洋时间 2:27 到 13:35 之间,在 macOS 或 Windows 上从 Cursor 市场安装或更新的人,才暴露在恶意包里。StepSecurity
2.1.313 更是从未上过 Open VSX、微软市场或 Anthropic 的官方渠道,官方直接跳到了 2.1.314。 只看版本字符串,既会漏掉已经自动更新到干净版本、但持久化还在的机器,也会把装了干净 2.1.312 的人吓一跳。StepSecurity
真正麻烦的是卸载之后。恶意扩展会往 ~/.ssh/authorized_keys 里追加一把标签为 svc-telemetry 的公钥,并尝试开 SSH、拉反向隧道;还会在 macOS 写 com.apple.sysmond 的 LaunchAgent,在 Windows 建 SysMon 计划任务或启动目录脚本,样本里还带着 Linux 的 cron 分支,每 60 秒重试一次。Cursor 的公告明确说,仅卸载扩展可能不够,因为载荷会释放独立的持久化脚本,卸载后继续运行。 所以检查顺序不是“扩展还在不在”,而是“钥匙还在不在、自启项还在不在、隧道进程还在不在”。这次多数机器没被真正登进去,靠的是攻击者自己的代码错误和权限门槛,不是我们做对了什么。官方给了检查命令和清理脚本,跑完还要轮换这台机器能碰到的凭据;有执行迹象的,考虑重建。Cursor 官方安全公告
还有一个坑,是把“市场重开”当成“根因修好”。Cursor 轮换了密钥、重建了市场,也审计了访问记录,说没有其他扩展被篡改。但公告没有交代攻击者具体怎么拿到这套发布能力。在这一点说清之前,重开的市场只是一个恢复营业的分发渠道,不是信任锚。Cursor 文档自己也说,没有哪一项控制能替代其他项。
对个人来说,最直接的一项是把 extensions.installCooldownHours 设起来:让扩展在市场上架满 N 小时后再安装或更新。团队管理员可以强制全组生效,团队设置的默认值是 0,也就是不等待。个人也可以在自己的设置里填这个值。 它未必挡得住“同版本产物被替换”这种更隐蔽的情况,但能过滤掉这次这种“上架 11 小时就下架”的窗口。Cursor 扩展文档
最后还有一个容易混淆的地方:Cursor 现在有两个“市场”。新的 Cursor Marketplace 放的是官方插件,文档说每个插件上架前都人工审核。 这次出事的是 VS Code 扩展市场,走 Open VSX,靠的是市场代理的自动化恶意分析。 前者审核严,不等于后者安全。装 Claude Code 这类扩展时,别把两个市场的信任混着用。Cursor 插件文档Cursor 扩展文档
如果 10 月 29 日那个窗口里你在 Cursor 里装过或更新过 Claude Code,先跑官方公告里的检查,再决定要不要清理和轮换。如果不在窗口里,至少把冷却期打开,把不用的扩展关掉,别用管理员权限跑编辑器。市场重开只是把货架修好了;你要修的是自己的默认信任。