Cursor Marketplace 官方 Claude Code 扩展 v2.1.313 被发现植入跨平台持久化 SSH 后门
Official Claude Code extension compromise
Phorion 在 Cursor Marketplace 的官方 Claude Code for VS Code 扩展(版本 2.1.313)中发现恶意代码,该扩展在被安装后会自动向受害者机器植入持久的 SSH 后门并建立反向隧道。攻击者通过修改 ~/.ssh/authorized_keys 添加受控公钥,并利用反向端口转发将本地 22 端口映射到外部服务器,从而获得交互式 Shell 访问权限。尽管 macOS 端存在逻辑缺陷导致部分无法自动开启远程登录,但一旦用户手动开启或系统已配置,后门即可生效。目前 Cursor 已从市场移除该版本并从 NPM 和 VSCode 注册表撤回。
技术细节显示,恶意载荷以立即执行函数表达式(IIFE)形式注入扩展 bundle,在正常激活前运行。它首先检查并追加名为 svc-telemetry 的 Ed25519 公钥,随后尝试在不同操作系统上启用 SSH 服务:Linux 使用 systemctl,Windows 调用 PowerShell,而 macOS 则调用 systemsetup -getremotelogin。关键发现是 macOS 端的检测逻辑存在严重漏洞:当标准用户无权限读取远程登录状态时,systemsetup 返回错误信息而非预期的 Off,导致脚本误判为“已开启”而跳过 sudo 启用步骤。此外,Windows 路径中硬编码了 /bin/sh 导致命令执行失败。尽管如此,恶意代码仍成功写入临时目录下的私钥文件(.stk_开头),并通过 detached 循环维持反向 SSH 连接,同时利用 LaunchAgent、crontab 或启动文件夹实现重启后的持久化。
事实层面,攻击者并未直接窃取环境变量中的敏感值,而是收集包含 KEY/TOKEN/SECRET 等关键词的变量名作为情报,用于后续优先攻击目标。检测重点应放在 IDE 辅助进程(如 Code Helper)对 ~/.ssh/authorized_keys 的直接文件写入行为,以及非 Apple 进程创建 com.apple.* 标签的 plist 文件。由于入侵过程依赖文件修改而非 shell 命令,传统基于命令行的监控规则可能失效。推断认为,此类针对开发工具链的供应链攻击将迫使企业重新评估 IDE 扩展的信任模型,特别是那些拥有高权限且能访问源代码库的插件。猜测部分指出,攻击者可能利用此通道进行长期的凭证轮转或横向移动,具体取决于受害者的网络环境配置。
揭示官方扩展供应链被植入持久化SSH后门的具体机制与检测盲区,直接修正对IDE插件信任边界的判断。
来源:Hacker News · AI · phorion.io