装过Cursor恶意Claude插件?自查和清理步骤看这

源自75位全网作者

14:02

10月29日到30日之间,你在 Cursor 里安装或自动更新过 Claude Code 扩展(Anthropic.claude-code)吗?如果装过,先记住这条最重要:卸载扩展不等于清干净后门。微博

Cursor 的扩展市场当时分发了被篡改的 2.1.312 和 2.1.313 两个版本,挂网约 11 小时(太平洋时间 10 月 29 日 02:27 至 13:35,合北京时间 29 日傍晚约 17:30 至次日凌晨约 04:30),官方估计最多约 5000 名用户装上了它们。 多数 macOS 和 Windows 设备上,恶意代码建立远程隧道这一步因缺少管理员权限而失败,但失败之前的动作都已经完成:攻击者的 SSH 公钥写进了系统、持久化任务装上了、主机信息也发出去了。这台机器现在版本正常,不代表它当时没被动手脚。IT之家知乎

先确认:怎么算"装过"

这次不需要你主动搜索、主动安装。扩展默认自动更新,只要编辑器在那个窗口内自动拉取过 Claude Code 扩展的更新,恶意代码就已经落进机器;它藏在打包文件 extension.js 最前面的 66 行自执行代码里(安全公司 OpenSourceMalware 的分析,StepSecurity 比对后确认文件比干净版大了约 7 KB),编辑器一启动、扩展一加载就开始跑,不用你打开 Claude 说一句话。知乎

判断"装没装过"还有个陷阱:恶意包下架后,同一个扩展可能已自动更新成干净的 2.1.314,或者你早把它卸了。所以"现在装的哪个版本"证明不了任何事,唯一可靠的办法是查机器上留下的痕迹。知乎

装过之后,机器上发生了什么

综合 Cursor 官方安全公告和 Phorion、StepSecurity 等团队的公开分析,恶意代码按四步执行:

  1. 收集一份主机画像:公网 IP、主机名、用户名、系统版本与 CPU 架构、用户目录、git 全局邮箱,外加最多 40 个名字里带 KEY、TOKEN、SECRET 的环境变量(首次回连只发变量名、不发值),走未加密 HTTP 发到 134.209.82.225 的 8099 端口。参与分析的研究员点出要害:变量名本身就能说明这台机器接着哪家云、哪套 CI。

  2. 往用户主目录的 ~/.ssh/authorized_keys 追加一行攻击者公钥,注释伪装成 svc-telemetry,看起来像一条普通遥测配置。 拿着对应私钥的人无需密码即可登录这台机器。知乎

  3. 尝试开启本机 SSH 服务并向上述服务器建立反向隧道。这一步在多数没有管理员权限的 macOS、Windows 主机上失败——但这是攻击者代码的缺陷加上权限限制的运气,不是防线起了作用。

  4. 安装持久化:Windows 写计划任务,Linux 改 crontab,macOS 装 LaunchAgent,重启不掉。微博

Cursor 公告因此把话说死:只要装过就要清理,不能因为"隧道没打通"就算了。 公钥只要留在 authorized_keys 里,哪天这台机器上有人用管理员权限开了远程登录,它随时能用。知乎

自查:四个地方按顺序查

以下排查项来自 Cursor 官方安全公告和 StepSecurity 的公开排查方法,执行前先看清自己的系统。

macOS / Linux:

  • 查公钥:`grep svc-telemetry ~/.ssh/authorized_keys`,有输出即中招;没有命中也建议逐行核对注释和密钥内容。

  • 查持久化:Linux 跑 `crontab -l`,macOS 检查 `~/Library/LaunchAgents/` 下不属于任何已知软件的陌生 plist。

  • 查扩展残留:在 Cursor 的扩展安装目录(一般是 `~/.cursor/extensions/`)找有没有 `anthropic.claude-code-2.1.312-` 或 `-2.1.313-` 字样的文件夹,进去搜 `134.209.82.225` 和 `svc-telemetry` 这两个字符串——命中说明恶意包曾在盘上。知乎

Windows(用 PowerShell):

  • 检查两个文件里有没有 svc-telemetry:`$HOME.sshauthorized_keys` 和 `C:ProgramDatasshadministrators_authorized_keys`。知乎

  • 打开任务计划程序,核对有无陌生计划任务,特别是每天或每次登录触发的条目。

清理:顺序和红线

发现命中后,别急着"删掉了事",按这个顺序走:

  1. 如果这台机器存有高价值凭证(云密钥、公司源码、生产环境访问),先断网隔离再清理。

  2. 删除 authorized_keys 里那条 svc-telemetry 公钥,只删确认不是自己的行。

  3. 清掉计划任务、crontab 或 LaunchAgent 里的陌生持久化条目。

  4. 运行 Cursor 安全公告提供的专用清理脚本——官方明确提醒,单纯卸载扩展不会清掉已落地的后门文件。

  5. 轮换这台机器上登录过、触达过的凭据:token、云凭证、git 凭证、活跃会话。主机画像和变量名已经外发,无法收回。

  6. 全部确认干净后,再从市场重装 Claude Code for VS Code 2.1.314 或更新版本。极客404官网

一个需要升级处置的边界:上面流程对个人开发机够用。如果是常开 SSH 的服务器、跑共享凭据的跳板机,公钥的威胁是即时生效的,建议重装系统或做深度审计,而不是删行了事。

事件现状:处理很快,但有一件事没交代

到 10 月 30 日,恶意版本当天下架,Cursor 临时关停了整个扩展市场,轮换密钥、完成审计后重新上线;溯源指向市场分发环节被入侵,而非 Anthropic 的开发账号被劫持——Anthropic 官方并未发布过这两个恶意版本,随后在 Open VSX 和微软市场放出干净的 2.1.314。其他扩展和 Cursor 其他产品不受影响,攻击者的信标服务器也已下线。知乎

没有交代的是:攻击者具体怎么获得以官方 ID 发包的能力,Cursor 至今未公开细节。这直接决定风险会不会再来一次。知乎

这次事件最该记住的一条:扩展 ID、发布者名字和认证徽章证明的是名字,不是来源。就在不到一周前,OVHcloud 也发生过同类手法——贡献者的 GitHub 账号被劫持,官方 CLI 五个已发布版本的二进制被换成窃密程序。两次都不用伪造品牌,改的就是合法渠道发出去的产物。对 AI 编程工具这类天然拿着读写代码、执行终端命令权限的扩展,在发布者签名成为市场标配之前,能做的就是把自动更新放慢一档、装前多核一次发布者。知乎

内容由AI生成
0
扫一下,分享更方便,购买更轻松
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

最新文章 热门文章