如果你在 北京时间 2026年10月29日 17:27 至 10月30日 04:35 期间,用 Cursor 安装或自动更新过 Anthropic.claude-code 扩展(中招版本为 2.1.313),你的机器可能被写入了攻击者的 SSH 公钥和后台自启脚本[2]。微软官方 VS Code 市场、Open VSX 以及 npm 上的官方 CLI 包均未受影响[3]。
你可以直接去终端跑一下这行命令,看看 ~/.ssh/authorized_keys 里有没有多出一个叫 svc-telemetry 的公钥[2]:
# macOS / Linux
grep -qs svc-telemetry ~/.ssh/authorized_keys && echo "【警告】发现恶意密钥,机器已受影响!" || echo "未发现异常"# Windows PowerShell
$files = "$HOME\.ssh\authorized_keys", "C:\ProgramData\ssh\administrators_authorized_keys" | Where-Object { Test-Path $_ }
if ($files -and (Select-String svc-telemetry $files)) { "【警告】发现恶意密钥,机器已受影响!" } else { "未发现异常" }如果显示未发现异常,把扩展更新到 2.1.314 以上就可以继续干活了[2][4];如果命中了警告,光卸载插件没用,请往下看具体的清理步骤[2]。
事件来龙去脉与影响范围
这两天安全圈和开发者社区都在传 Claude Code 扩展被投毒的事。最开始消息比较乱,有人说是 Open VSX 被黑了,也有人怀疑是微软官方市场或者 Anthropic 自己的发布流水线出了问题[3]。随着 OpenSourceMalware、Phorion 等安全机构以及 Cursor 官方公告的披露,事情的来龙去脉已经彻底理清了[1][2][3]。
这次出问题的地方,其实只在 Cursor IDE 自建的扩展市场(Cursor Extension Marketplace)[2][3]。Anthropic 源码和构建流水线是干净的,平时用原版 VS Code、从 Open VSX 下插件,或者只在终端里用 npm 跑 @anthropic-ai/claude-code 的朋友完全不用担心[3]。
出问题的扩展包版本是 2.1.313,在太平洋时间 10月29日 02:27 到 13:35(也就是北京时间 10月29日下午五点半到次日凌晨四点半左右)处于可下载状态[2]。根据官方统计,大概有最多 5000 名在这个时间段内打开 Cursor 安装或自动更新了该扩展的用户受到了波及[2][3]。发现问题后,官方很快用干净的 2.1.314 版本替换了问题包[4]。
恶意代码具体干了什么
攻击者的手法并不复杂,就是在正常扩展的主文件 extension.js 最前面硬塞了 66 行 JavaScript 代码[4][5]。这段代码把所有报错都用异常捕获静默吞掉了,所以插件用起来跟平时一模一样,甚至不需要你真正去跟 Claude 发起对话,只要启动编辑器或者打开 Webview 就会在后台触发[3][5]。
触发之后,它主要在后台干三件事:留后门、写自启、发机器信息。

首先是留 SSH 后门。代码会往你本地的 ~/.ssh/authorized_keys 文件里追加一条 Ed25519 公钥,为了看着像正常配置,它还特意加了个 svc-telemetry 的注释伪装成系统遥测[3]。接着它会尝试在你的机器上开启本地 SSH 服务(比如在 macOS 上调 systemsetup -setremotelogin on,在 Windows 上用 PowerShell 装 OpenSSH.Server),同时在临时目录释放一个以 .stk_ 开头的十位十六进制私钥文件,尝试用 ssh -N -R 或 autossh 往攻击者的服务器 tunnel@134.209.82.225(端口 22)打一条反向隧道[2][3]。
不幸中的万幸是,在默认配置的 macOS 和 Windows 上,开启系统级 SSH 服务是需要管理员权限的,外加攻击者写的这段代码本身也有点 Bug[2]。所以除非你平时习惯用管理员权限去跑 Cursor,或者你机器本来就开着 SSH 服务,否则开启本地 SSH 这一步大概率会直接失败,攻击者也没法真的顺着隧道连进你的电脑[2]。
虽然反向登录不一定能成,但前面提到的写公钥、写开机自启和收集信息这几步,在普通用户权限下就已经能跑通了[2]。
为了让隧道断了也能重连(每 60 秒重试一次),脚本针对不同系统都做了自启动配置[2][3]。在 macOS 上,它会生成 ~/.config/.smt 和 ~/.config/.smtk,并在 ~/Library/LaunchAgents/ 下塞一个叫 com.apple.sysmond.plist 的文件,伪装成苹果自带的系统进程[2][3]。在 Windows 上,它会在用户目录的 .config 下建 smt.cmd 和 smtk,尝试注册名为 SysMon 的计划任务,同时往开机启动文件夹(Startup)里放一个 sysmon.cmd 保底[2]。在 Linux 上则是直接往用户的 crontab 里写一条 @reboot 任务[3]。
与此同时,它还会收集一轮你的本地环境信息,通过明文 HTTP POST 发给 http://134.209.82.225:8099/beacon[3][4]。发出去的内容包括你的公网 IP、主机名、本地用户名、操作系统和 CPU 架构、主目录和当前工作目录路径,以及你全局配置的 Git 邮箱(git config --global user.email)[3][4]。比较讨厌的是,它还会扫描你的环境变量,把名字里带有 KEY、TOKEN、SECRET、PASS、AWS、GCP 的环境变量筛出来(最多 40 个)一并发过去[3][4]。好在这次初始包里它只传了环境变量的名称用来摸底,还没有直接把变量的值传走[3][4]。
中招之后怎么清理

如果你跑了文章开头的自查命令,发现文件里确实有 svc-telemetry,切记不要只去编辑器里把扩展卸载了事,因为那些写进系统自启目录的脚本已经脱离编辑器独立在后台跑了[2]。
最省事的办法是直接用 Cursor 官方在安全公告里提供的清理脚本[2]:
- macOS 脚本: remediate-macos.sh
- Windows 脚本(需管理员权限运行): remediate-windows.ps1
如果你更习惯自己动手清理,或者在用 Linux,可以按下面的路径逐个删干净:
- 清理 SSH 公钥: 打开
~/.ssh/authorized_keys(Windows 用户还要看一眼C:\ProgramData\ssh\administrators_authorized_keys),把末尾带有svc-telemetry注释的那整行公钥删掉(该密钥指纹为SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk)[2]。 - 清理各系统的自启项与残留文件:
- macOS: 卸载并删除
~/Library/LaunchAgents/com.apple.sysmond.plist,删掉~/.config/.smt、~/.config/.smtk以及$TMPDIR/.stk_*临时文件[2]。 - Windows: 删掉计划任务里的
SysMon,删除%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\sysmon.cmd、%USERPROFILE%\.config\smt.cmd、%USERPROFILE%\.config\smtk以及%TEMP%\.stk_*文件[2]。 - Linux: 执行
crontab -e删掉异常的@reboot任务,并清理~/.config/.smt*相关文件[3]。
- macOS: 卸载并删除
- 杀进程与更新: 看一下后台有没有残留的
ssh -N -R或autossh进程,有的话直接 kill 掉,最后把 Cursor 里的 Claude Code 扩展更新到2.1.314或更高版本[2][4]。
目前 Cursor 官方已经联合云厂商把攻击者的那台 C2 服务器(134.209.82.225)给拔线了[2]。如果是公司内网环境,安全团队还是可以在边界防火墙上把这个 IP 的 22 和 8099 端口封一下,顺带查查这两天有没有机器往这个地址发过请求[3]。
另外多提一句,如果你的机器命中了恶意公钥,而且你平时本来就开着机器的 SSH 服务(或者用管理员权限跑了 Cursor),那就不能当成普通未遂事件处理了[2]。为了稳妥起见,建议换一台干净的设备,把这台机器上存过的本地 SSH 私钥、Git Token、AWS/GCP 等云平台密钥和各类 API Key 全部轮换一遍[2][3]。要是机器上有特别核心的业务凭证,直接重装系统会更踏实[3]。
参考来源
- Official Claude Code VSX Compromise Analysis · Phorion
- Security notice — malicious version of Anthropic.claude-code (2.1.313) identified in the Cursor Extension Marketplace · Cursor
- Claude Code Extension 2.1.313 SSH Backdoor: What To Check · ExplainX
- Official Claude Code VS Code Extension Compromised to Install Persistent SSH Backdoor · The Hacker News
- Claude Code Extension Security Incident Report · Binance Square


