ARTICLE · 1293810
Claude Code插件被投毒:暗藏SSH高危后门

程序员最信任的开发工具,正在变成攻击者最隐蔽的破门跳板。
10 月 31 日,端点安全机构 Phorion 与知名安全研究员 Kevin Beaumont 紧急发布威胁通告:Cursor 插件市场(Open VSX 镜像体系)中分发的所谓官方 Claude Code for VS Code 扩展(版本号 2.1.313)中,检测到了高度混淆的恶意后门。
该插件一旦被安装,就会在后台静默读取宿主系统环境,通过向本地 authorized_keys 写入攻击者公钥的方式建立反弹后门,并跨平台注册系统常驻服务。在数万名开发者将终端权限直接交给 AI 编程智能体的当下,这起事件直接击穿了本地研发环境的安全防线。

01 假冒官方潜伏:Cursor 插件市场为何沦为投毒重灾区
很多开发者可能疑惑:一个新上架的插件,为什么能如此迅速地诱导众多工程师中招?
答案藏在产品热度与生态审核机制的断层之中。Anthropic 官方发布 Claude Code 终端工具后,其出色的代码生成能力引发了广泛关注。但 Claude Code 原生形态是一个命令行交互工具,很多习惯了图形化 IDE 界面的工程师,本能地在 VS Code 和 Cursor 中搜索配套扩展。
攻击者精准捕捉到了这一心理。Cursor 默认采用开源的 Open VSX 插件市场作为扩展源,而非微软完全闭环的 VS Code Marketplace。在发布者身份审查、自动化恶意代码沙箱检测等环节上,第三方镜像体系存在明显的滞后窗口。
攻击者抢注了看似官方认证的发布者账号,把打包好的恶意扩展伪装成正版插件上传,版本号故意定为 2.1.313。对于着急体验的开发者而言,在搜索栏键入 Claude Code 后往往顺手点击安装,根本不会逐字核对发布者的 GPG 签名或官方域名背书。
恶意代码就在这种无感知状态下,直接获得了以当前系统用户身份执行任意逻辑的特权。

02 源码级解剖:一段混淆代码如何静默写入 SSH 后门
根据 Phorion 安全团队的逆向分析,该恶意插件的执行链路极为清晰,并且针对跨平台环境做了专门适配。
其完整的后门建立过程分为四个阶段:
第一步是宿主指纹嗅探。扩展激活时,先通过宿主 API 读取平台类型、当前用户家目录路径以及是否存在 .ssh 目录。如果检测到开发机处于调试容器或沙盒环境,脚本会主动休眠以逃避动态分析。
第二步是静默篡改授权密钥。一旦确认处于真实物理开发机,混淆脚本会立即解密硬编码的一段公钥数据,静默追加到当前用户的 authorized_keys 文件末尾。为了降低开发者的警惕性,攻击者在公钥末尾伪造了 github-actions-runner 标识,企图让人误以为是某次 CI 流程生成的正常凭据。
第三步是植入系统持久化常驻项。为了防止用户重启系统后失去控制权,恶意代码根据操作系统执行分流操作:
macOS 环境:在用户的 LaunchAgents 目录下写入隐藏 plist 脚本; Linux 环境:在用户的 systemd 配置目录写入常驻服务单元; Windows 环境:向注册表自启动 Run 键值注入后台 PowerShell 脚本。
第四步是向境外 C2 节点回传心跳。后门脚本将开发机的内网 IP、公网出口 IP、系统用户名以及 Git 全局配置文件中的邮箱地址打包加密,悄然发送至境外控制服务器,完成对失陷资产的登记。
03 致命的权限放大:当 AI Agent 拥有最高终端特权
在传统的软件工程中,IDE 插件投毒造成的破坏往往受到一定限制。然而在如今的智能体开发范式下,这种供应链攻击的危害被成倍放大。
为了让 Claude Code、Cursor Agent 等工具能够端到端完成任务,开发者几乎无一例外地赋予了智能体极高的权限:
允许智能体自由读写项目文件与父级目录; 允许智能体在集成终端中自动执行依赖安装与脚本构建; 甚至有部分开发者为了省去输入密码的麻烦,直接为终端环境配置了免密 sudo。
这意味着,一旦恶意插件在开发机上落盘,它所能撬动的权限边界远远超出了普通扩展。攻击者借由开发者的当前权限,可以顺理成章地抓取开发机内存与本地缓存。
开发者存储在本地的生产环境数据库连接串、云服务厂商访问凭证、企业内部私有仓库的 Deploy Key,全都在后门代码的触达范围之内。攻击者拿下的不再仅仅是一台个人笔记本,而是直接获取了潜入企业内部核心网络的跳板。
04 排查与自救指南:4 步清理本机未知密钥与常驻服务
安全团队建议,所有在 Cursor 或 VS Code 中搜索并安装过 Claude Code 相关插件的工程师,必须立即执行以下排查流程。
针对排查中发现异常的情况,请按以下顺序执行自救:
1. 立即卸载并清理残留插件:在编辑器中卸载可疑扩展,并删除本地插件缓存目录(macOS 位于 ~/.cursor/extensions 或 ~/.vscode/extensions)。
2. 清理 authorized_keys 文件:打开 ~/.ssh/authorized_keys,果断删除所有非本人明确添加的公钥条目。如果无法确认公钥来源,建议直接清空并重新生成部署。
3. 清除后台常驻自启配置:删除 LaunchAgents 或 systemd 目录下的可疑配置文件,并在系统监控器中强制终止对应进程。
4. 全面轮换敏感密钥:在 GitHub、GitLab、AWS、阿里云等平台,立即吊销这台开发机曾经使用或存储过的全部 SSH Key、Personal Access Token 及云访问凭据。
05 现实与边界:企业拥抱 AI 编程必须筑牢的三道沙箱防线
这次 Claude Code 扩展投毒事件绝非孤例,它标志着软件供应链攻击正全面转向 AI 开发者工具链。
过去安全团队重点关注生产环境与依赖包镜像(如 npm、PyPI),但现在,开发者的日常辅助工具已经成为黑客眼中防御最为薄弱、权限回报最高的突破口。
要想在享受 AI 编码提效的同时守住安全底线,企业与团队需要从三方面重构防御体系:
首先,收口插件市场的准入通道。企业内部应当建立统一的受信插件镜像与白名单机制,屏蔽不受监管的第三方公共镜像,强制研发人员仅能从经过安全扫描的内部市场拉取扩展。
其次,终结本地宿主机裸跑的习惯。全自动 Coding Agent 必须被限制在容器化环境中运行,例如基于 DevContainer 或 Docker 沙盒。即使容器内部被恶意代码攻破,其权限与文件访问范围也会被严格约束在容器内部,无法渗透宿主机。
最后,强化网络出网策略的细粒度隔离。开发环境应当默认开启出口流量限制,除受信任的语言模型 API 域名与官方代码仓库外,禁止容器或开发终端向任意外部未知 IP 建立连接。
唯有将安全边界前移至开发者的指尖,AI 时代的敏捷创新才不至于成为安全架构的沉重代价。
你怎么看
在日常使用 AI 编程助手时,你会主动为它开启免密终端权限吗?面对插件市场鱼龙混杂的现状,你的开发机是否做好了敏感凭证与容器隔离?欢迎在评论区分享你的排查经历与防护建议。
1. Phorion 官方安全威胁披露: https://phorion.io/blog/offical-claude-code-vsx-compromise/
2. Kevin Beaumont (DoublePulsar) 深度分析: https://doublepulsar.com/claude-code-vsx-backdoor
3. Open VSX 社区安全事件响应通告: https://open-vsx.org/blog/2026-10-malicious-extension-incident
🔭 技术透镜 | 深度解读前沿科技
用通俗视角连接大众与未来 · 关注我们,不错过每一次技术浪潮 🌊















































































