共计 3383 个字符,预计需要花费 9 分钟才能阅读完成。
整理 | 华卫
最近,有网络安全专家发现在 npm(Node.js 包管理器)平台上出现了三个恶意软件包,这些软件包的目标是被广泛使用的 AI 驱动源代码编辑器 Cursor,特别是针对苹果的 macOS 用户。迄今为止,这三个恶意软件包的下载总数已超过 3200 次。
来自软件供应链安全公司 Socket 的研究人员 Kirill Boychenko 表示:“这些软件包伪装成提供‘最便宜的 Cursor API’的工具,实际上是在窃取用户的凭据,并从由攻击者掌控的服务器中提取有效的加密负载,篡改 Cursor 的 main.js 文件,并禁用自动更新功能以确保其持久性。”
Cursor 用户的“劫持”过程
这三个有问题的软件包分别是:sw-cur(下载 2771 次)、sw-cur1(下载 307 次)和 aiide-cur(下载 163 次)。值得注意的是,当前这三个软件包仍然可以从 npm 注册表中下载。
其中,“aiide-cur”是今年 2 月 14 日首次发布的,由一个名为“aiide”的用户上传,其 npm 库被描述为“用于配置 macOS 版本光标编辑器的命令行工具”。另外两个软件包则是由一名化名为“gtr2018”的恶意行为者提前一天发布的。

在安装这些软件包后,它们的目的是获取用户输入的 Cursor 凭据,并从远程服务器(如“t.sw2031[.]com”或“api.aiide[.]xyz”)提取下一步的有效载荷,随后用恶意代码替换合法的 Cursor 代码。
经过对这三个软件包代码片段的分析与注释,Socket 发现它们共享同一个核心后门逻辑,唯一的区别在于硬编码域名,以及(对于 sw-cur1 和 aiide-cur)最后的调用;而凭据窃取、加密负载获取、解密程序及文件补丁的过程在其他方面则完全一致。
Socket 进一步指出,这些库一旦被安装,就会设计用来窃取用户的 Cursor 凭据,并通过远程服务器(“t.sw2031[.]com”或“api.aiide[.]xyz”)获取后续有效载荷,进而用恶意逻辑替换合法的 Cursor 特定代码。此外,sw-cur 还采取了禁止 Cursor 自动更新并结束所有 Cursor 进程的措施。接着,这些 npm 软件包会重启应用程序,以使被篡改的代码生效,从而使恶意行为者能够在该平台上执行任意代码。

恶意软件包执行流程图
此次攻击特别针对在 macOS 系统上安装的 Cursor,通过修改 /Applications/Cursor.app/… 路径下的内部文件,例如 main.js,利用该编辑器的可信环境执行攻击者控制的代码并保持持续运行。
Socket 指出:“这三个软件包的设计显示,攻击者故意利用开发者的工作流程及 IDE 的信任边界,以获取长期的访问权限与控制权。这是对开发者信任的代码编写工具的攻击。”建议所有怀疑受到攻击的组织重新从经过验证的安装程序中安装 Cursor,替换所有受影响的凭据,并对源代码控制和构建工件进行审计,以寻找未经授权的修改迹象。
“最便宜 API”或引发更大损失
这种攻击活动突显了日益增长的供应链威胁,恶意者越来越频繁地通过恶意补丁攻击受信任的本地软件。”Boychenko 指出。而这类攻击成功实施的关键因素在于,攻击者试图利用开发人员对 AI 的兴趣,以及部分用户希望避免支付 Cursor AI 使用费、寻找更便宜的访问 AI 模型的方法的心理。
作为一款以 AI 为核心的集成开发环境,Cursor 为用户提供对包括 Claude、Gemini 和 GPT-4 在内的大型语言模型的分级访问,调用高级模型是按次收费的(如 OpenAI 最新的推理模型 o3 每次调用费用为 0.3 美元)。尽管用户可以使用自己的 API 密钥,但一些用户可能会寻求更便宜或非官方的集成方式来降低成本。

Boychenko 指出,恶意攻击者可能利用“最便宜的 Cursor API”这一标语,试图吸引特定用户群体,以打折的名义诱骗用户,同时暗中植入后门程序。
对个人用户而言,感染的开发环境(IDE)将带来凭证被盗、代码泄露以及传递其他恶意软件的直接风险。一旦攻击者获取了 Cursor 凭证,就能够访问付费服务,更严重的是,能够接触到受害者在 IDE 中打开的任何代码库。由于注入的恶意代码以用户权限运行,因此可以在不被发现的情况下实施进一步的恶意操作或提取敏感信息。
在企业环境或开源项目中,风险则会显著增加。开发者设备中潜藏的特洛伊木马 IDE 可能导致专有源代码的泄漏,恶意依赖项被引入构建中,或者成为 CI/CD 管道中攻击者横向移动的跳板。由于恶意补丁关闭了 Cursor 的自动更新功能,攻击者能够长时间维持其活动。
不过,也有网友评论称:“这只是突显了供应链面临的普遍风险。现在的攻击对象是那些愿意下载‘最便宜 API’的用户,但理论上,没有人能够阻止恶意代码被嵌入到特定发行版的 vi/vim/gvim 软件包中。”
恶意软件包的泛滥
Socket 的调查揭示了一种新兴趋势,恶意行为者利用流氓 npm 软件包,对开发者设备上已安装的合法库或软件进行恶意篡改。这一现象亟需引起重视,因为它使得恶意软件即便在恶意库被删除后依然存在,带来了新的复杂性,开发者必须彻底重新安装被篡改的软件。
Socket 进一步解释道:“基于补丁的攻击是针对开源软件供应链的恶意行为者工具箱中的一种新型手段:攻击者没有直接将恶意软件混入软件包管理器,而是发布一个看似无害的 npm 软件包,重写受害者计算机上已被信任的代码。通过在合法的父进程(如 IDE 或共享库)内进行操作,恶意逻辑能够继承应用程序的信任,即使有问题的软件包被删除后依然存在,并自动获得软件所拥有的所有权限,包括 API 令牌、签名密钥以及网络访问权限。”
为应对这种新型供应链威胁,防御者需要关注那些在安装后运行脚本、修改 node_modules 外文件的包,或者发起意外网络请求的包,并将这些监测结果与严格的版本控制、实时依赖项扫描以及对关键依赖项的文件完整性监控结合起来。
在披露 Cursor 相关情况的同时,Socket 还发现了另外两个恶意 npm 软件包:“
pumptoolforvolumeandcomment”和“debugdogs”。这些软件包会传递经过混淆的有效载荷,窃取加密货币密钥、钱包文件,以及与名为 BullX 的加密货币平台相关的交易数据,攻击目标为 macOS 系统。这些被窃取的数据会通过 Telegram 机器人泄露。
这两个软件包由一个名为“olumideyo”的用户在 2024 年 9 月发布。到目前为止,“
pumptoolforvolumeandcomment” 已被下载625次,而“debugdogs”则总共下载了119次。
“‘debugdogs’ 实际上只是调用了‘
pumptoolforvolumeandcomment’,因此成为一种便捷的二次感染载荷。这种‘包装器’模式增强了主要攻击手段,使得恶意代码能够通过不同名称轻松传播,而无需修改核心恶意代码。”安全研究员 Kush Pandya 表示,“这种高度针对性的攻击可以在几秒钟内清空钱包并暴露敏感凭证及交易数据。”
参考链接:
https://socket.dev/blog/malicious-npm-packages-hijack-cursor-editor-on-macos
https://thehackernews.com/2025/05/malicious-npm-packages-infect-3200.html
今日好文推荐
Agentic AI 要终结数据库和 SaaS?大厂掌门人公开互撕,焦虑的 CEO 们押上了不同的技术路线
马斯克 KO 奥特曼!一群前员工倒戈、各界组织助攻,OpenAI 认怂:世界变了,我们不改了!
让 PostgreSQL 更契合 Agent、氛围编程!成立四年、微软投资,这家开源数据库公司终以 10 亿美元卖身 Databricks
二十年老牌 IDE 栽在 AI 上!JetBrains 被差评逼疯,批量删除评论,用户愤怒打更多1星抗议
