整理 | 华卫
最近,有网络安全专家发现了三个恶意的 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 的信任边界,以获取长期的访问权限和控制权。这是对开发者依赖的代码编写工具的一次攻击。”因此,Socket 建议所有怀疑受到攻击的机构重新安装 Cursor,确保使用经过验证的安装程序,替换所有受影响的凭据,并审核源代码控制和构建工件,以查找未授权的更改迹象。
“最便宜 API”为诱饵,或招来更大损失
这类攻击活动突显了日益严重的供应链威胁,恶意行为者越来越依赖恶意补丁来攻击受信任的本地软件。”Boychenko 说道。而成功实施此类攻击的原因在于,攻击者试图利用开发者对 AI 的兴趣,以及一些用户希望避免支付 Cursor AI 使用费用、寻找更便宜的访问 AI 模型的心理。
作为一款以 AI 为核心的 IDE,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们各自押注不同的技术路线
马斯克击败奥特曼!一群前员工反水,各界组织助力,OpenAI不得不承认:世界变了,我们的策略也要改变!
为PostgreSQL注入Agent和氛围编程的理念!成立四年、获得微软投资,这家开源数据库公司终于以10亿美元被Databricks收购
二十年老牌IDE在AI面前败下阵来!JetBrains因差评疯狂删除评论,用户愤怒反击,纷纷给出更多1星评价以示抗议
Please specify source if reproduced3200+ Cursor 用户遭遇恶意劫持!贪图便宜 API 的代价,AI 开发者需警惕! | AI工具导航


