Cursor 市集遭供应链攻击:Claude Code 套件被动手脚,最多 5000 人受影响

Cursor 官方市集遭供应链攻击,恶意 Claude Code 套件无需点击即可执行,最多影响 5000 用户。
本文详细报道了 Cursor 扩展市集遭遇的供应链攻击事件。攻击者替换了官方市集中名字正确的 Claude Code 套件,上架约 11 小时,最多约 5000 名用户受影响。恶意代码抢在套件启动前执行,无需用户点击,会添加 SSH 密钥、建立反向隧道、设置开机持久化,并回传主机信息与环境变量名称。文章拆解了攻击的四个步骤,提供了自查条件与清除步骤,并强调核心教训是“官方名字”与“官方渠道”是两件事,建议个人移除不用的套件、避免在环境变量中存放强密钥,企业建立套件白名单并监控异常 SSH 访问。
AI 编程工具 Cursor 的扩展市集曝出供应链攻击。攻击者没有伪造一个冒牌套件,而是把官方市集里名字正确的 Claude Code 套件替换成了带恶意代码的版本。上架约 11 小时,Cursor 官方估计最多约 5000 名用户受影响。更棘手的是,你不需要点击任何按钮——编辑器加载套件时恶意代码就会执行,而且单纯卸载套件不一定能清除问题。
事件背景:信任的链条从作者转移到了市集
Cursor 是基于 VS Code 的 AI 代码编辑器,用法与 VS Code 类似,并拥有自己的扩展市集。可以把市集理解成编辑器里的应用商店:安装一个扩展,就像请一位新同事进入办公室,它能接触到的范围比多数人以为的更广。许多人还开启了自动更新,市集一有新版本,编辑器就自行安装,用户甚至不会收到提示。
据 YouTube 频道安安的分析,这次攻击属于典型的供应链攻击——不直接攻击你,而是在你信任的环节动手脚。开发者的电脑尤其值钱:源代码、云端密钥、公司内网连接往往都在同一台机器上。攻击者只需要污染一个被广泛信任的套件,就能同时触达大量高价值目标。

供应链攻击(Supply Chain Attack)是一种攻击者不直接攻击最终目标,而是通过攻破或污染目标所信任的第三方软件、工具或服务来间接达成入侵的攻击模式。在软件开发领域,典型的供应链攻击包括篡改开源代码库、劫持软件更新通道、在官方应用商店中上传恶意版本等。这类攻击之所以危险,是因为它利用了开发者对“官方渠道”的天然信任,绕过了常规的边界防护。本次 Cursor 市集事件即属于此类:攻击者并未伪造一个独立的冒牌套件,而是直接替换了官方市集中名字正确的扩展包,使得用户即便从官方渠道安装也难以察觉。
恶意代码做了什么:四个动作拆解
安全研究公司(安安引述为 Foreign)拆解后发现,恶意代码被塞在套件主程序的最前面,抢在套件启动之前执行。它不需要你打开 Claude Code,会自动判断运行环境是 Mac、Windows 还是 Linux,再走不同的路径。整个攻击链可以拆成四个动作。
第一步:往 SSH 名单里加一把钥匙
SSH 是工程师远程登录电脑的常用工具,电脑里有一份授权名单,写着哪些密钥可以进门。恶意代码把攻击者的密钥加入这份名单,还取了一个类似系统服务的名字「SVC-Telemetry」作为伪装。
第二步:从内网挖一条反向隧道
防火墙通常阻止外部主动连入,但恶意代码从你的电脑主动向外连接,再把这条通路反向使用——相当于从屋子里面挖一条地道通到外面。即使关掉编辑器,隧道也不会停止,大约每分钟重试一次。更麻烦的是,这条连接看起来像普通的对外流量,很多个人电脑的防护根本不会注意。

反向隧道(Reverse Tunnel)是一种网络穿透技术。通常,防火墙会阻止外部主机主动发起的入站连接,但允许内部主机发起出站连接。反向隧道正是利用这一特性:内部主机主动连接外部服务器,并请求将外部服务器的某个端口“映射”回内部主机,从而在外部形成一条可以访问内部网络的通道。攻击者常利用此技术绕过防火墙,从外部控制内网机器。在本事件中,恶意代码从用户电脑主动向外建立连接,并将这条连接反向使用,使得攻击者能够透过看似普通的对外流量进入用户内网。即使关闭编辑器,隧道仍会持续重试,增加了持久化控制的风险。
第三步:建立持久化驻留
在 Mac 上,它放置一个开机启动项,标签伪装成苹果自家服务;在 Windows 上,它尝试创建名为 Sysmon 的计划任务,失败就改放进启动文件夹。这些动作都不需要你再次打开编辑器,电脑重启后它还会回来。
第四步:筛选值得下手的目标
恶意代码会回传主机名、账号、Git 邮箱、公网 IP,以及最多 40 个看起来像密钥的环境变量名称——注意是名称而非内容,但仅凭名称就足以判断哪台机器值得优先攻击。
环境变量(Environment Variable)是操作系统中用于存储系统或应用程序配置信息的动态值,例如路径、临时目录、密钥、代理设置等。在开发环境中,开发者常将 API 密钥、数据库密码等敏感信息保存在环境变量中,以便程序运行时读取。本次攻击中,恶意代码回传的是环境变量的名称而非具体内容。虽然名称本身不直接泄露密钥值,但攻击者可以通过名称(如 AWS_ACCESS_KEY_ID、GITHUB_TOKEN)判断目标机器上可能存有哪些高价值凭证,从而优先攻击或进行针对性钓鱼。这提醒开发者,即使环境变量的值未泄露,其命名也可能暴露系统信息,应避免使用过于明显的敏感名称。
攻击者的失误与真实风险
这支恶意程序并非无懈可击。据安安引述的研究,在 Mac 上它需要先检查远程登录是否开启,但没有管理员权限时检查会出错,程序判断失误后反而没有开启隧道。Cursor 也说明,多数 Mac 和 Windows 上攻击者可能无法真正通过隧道登录。但这只是运气好,并非防护到位。
Linux 上检查计划任务的逻辑同样有问题,重复执行时可能清掉用户原有的计划任务;Windows 上安装 OpenSSH 的流程在普通电脑上也跑不起来。不过钥匙和启动项仍然留在系统里,一旦你哪天自己开启了远程登录入口,通路就成立了。
你是否受影响:三个条件与自查步骤
安安给出明确的排查条件:第一,使用的是 Cursor,而非 VS Code 官方市集或 Open VSX;第二,安装的是 2.1.312 或 2.1.313 版本(Cursor 公告范围为 Mac 和 Windows);第三,时间在台湾时间 10 月 29 日下午 5 点多到 30 日清晨 4 点半左右开启了自动更新。很多人可能根本没意识到自己更新过,所以不要凭印象,要实际检查。
Mac 用户打开终端,检查 SSH 名单里有没有 SVC-Telemetry;有输出就代表钥匙在。没有输出也再多看一步:确认编辑器的扩展文件夹里有没有上述两个版本,以及 Launch Agents 文件夹里有没有一个叫 com.app.sysmon 的文件——真正的苹果服务不会放在这里。Windows 用户需要检查两个位置,具体指令在 Cursor 官方公告中。

查到之后:隔离、清除与换钥
如果自查命中,第一步是把这台机器隔离,不要再拿它登录重要服务;第二步执行 Cursor 提供的清除脚本,它会移除套件、启动项、隧道和密钥;第三步评估是否需要重装系统,Cursor 公告也提醒只卸载可能不够;第四步用另一台干净的电脑更换这台机器能接触到的所有密钥和登录凭证。
顺序至关重要:不要在被感染的电脑上改密码,那等于把新密码直接展示给攻击者。云端密钥、GitHub 账号、公司 VPN 都要纳入更换范围,不要只改想得到的那几个。公司安全人员还可以检查 SSH 日志里有没有来自本机的登录记录,有的话说明隧道真的被使用过。
官方响应与一个被误伤的插曲
Cursor 的处理措施包括:下架 2.1.312 和 2.1.313 版本、暂时关闭整个市集、结合权限更换密钥后重建并重新开放市集,攻击者的服务器也已下线。官方建议更新到 2.1.314。
事发初期有分析称问题出在 Open VSX,隔天即被更正——Open VSX 上并没有这个版本。Open VSX 是许多 VS Code 衍生编辑器使用的开放扩展库,这次被点名属于误会。这提醒我们,安全新闻的第一版常常会修正,只看第一篇报道可能白白紧张一场。
至于攻击者身份,目前仍未知,两个版本如何上架公告也没有说明,这些都是后续需要关注的点。需要分清的是,这不是 Claude Code 程序本身有漏洞,也不是 Anthropic 发布了坏版本。Cursor 公告写得很明白:有人修改后放上了它的市集。Anthropic 的安全工程师也表示官方渠道的版本未受影响。

教训与防护建议
「软件要从官方渠道下载」依然正确,但这次的关键教训是:官方名字和官方渠道是两件事。同一个套件在不同市集由不同的人保管,风险也不一样。自动更新平时帮你打补丁是好事,不必因一次事件就关闭,但在公司环境里,开发者电脑最好能快速回答一个问题:现在到底装了什么版本。
对个人开发者:不用的套件就移除,每个套件都是一扇门;不要把强密钥放在环境变量里到处带着,能用短效凭证就用短效的;偶尔打开 SSH 名单看看,看到不认识的钥匙就要追查。
对管理公司开发环境的人:建立套件白名单,重要工具固定版本,新版先验证再放行;监控编辑器有没有异常访问 SSH 文件夹——研究公司也建议这样做,编辑器没事不应该碰那里;控制开发者权限,避免一台机器出事导致整个公司沦陷。还要提前想好事故响应由谁牵头,确保能在一天内查完所有开发者电脑。
不写代码的人同样适用:手机里、浏览器里的扩展都是同样的道理,用不到就删,权限要得太多就值得怀疑。AI 工具越方便,拿到的权限越大,每隔一阵子回头看看,你到底把钥匙交给了谁。
本文信息整理至 11 月 2 日,调查仍在进行,后续请以官方公告为准。
相关推荐
科技前沿Caro揭秘:LBJ如何用伪装骗过种族隔离派
罗伯特·卡罗在LBJ传记中记录前参议员塔尔梅奇的采访:约翰逊初入参议院时刻意迎合南方保守派,塔尔梅奇称未察觉其民权倾向。掌权后约翰逊推动1964年民权法案与1965年投票权法案,揭示政治伪装与改革时机的关系。
科技前沿GitHub日报·11月07日:Agent就绪与上下文压缩
2026年09月02日(周三)午间版 AI新闻速递+热点深度讨论
科技前沿ToolLens:用Rust打造的MCP网关,将数千工具精简为三个
ToolLens 是一个用 Rust 编写的开源 MCP 网关,只向 AI 智能体暴露三个工具而非数千个,通过网关模式解决工具数量膨胀带来的上下文压力,为 MCP 生态提供工程化参考。