AI Threat Watch

案例 nx-s1ngularityAI 供应链全球

s1ngularity:被植入木马的Nx包武器化Claude和Gemini CLI窃取密钥

恶意的Nx npm版本以绕过权限的参数运行本地AI编程CLI来清点密钥,随后将数千名开发者的凭据泄露到公开的GitHub仓库。

严重针对 AI 的攻击状态: 已控制已核实案例档案

在交互式地图中打开引用此案例

报道日期
2025年8月27日
地点
全球
目标
Nx构建系统用户
严重程度
严重
发起者
身份不明的供应链攻击者(s1ngularity)
行为者类型
犯罪团伙
已报告损失
未报告
CVE
无

发生了什么

恶意的Nx npm版本以绕过权限的参数运行本地AI编程CLI来清点密钥,随后将数千名开发者的凭据泄露到公开的GitHub仓库。

影响: 约1000名开发者的2000多个密钥和2万个文件泄露;480个账户的约6700个私有仓库被公开;据Wiz统计总计2180个账户受影响

谁发起了攻击

行为者: 身份不明的供应链攻击者(s1ngularity)

归因: 无公开归因;由Nx维护者、Wiz、StepSecurity、Socket和GitHub Security Lab分析

动机: 大规模窃取开发者密钥(GitHub和npm令牌、SSH密钥、加密货币钱包、云凭据)

如何发生

攻击途径: Nx npm 20.9.0至21.8.0版本中的恶意postinstall脚本,以绕过权限的参数运行Claude、Gemini和Q CLI查找密钥,再推送到公开的GitHub仓库

根本原因: Nx的GitHub Actions工作流使用pull_request_target且未对PR标题做净化处理,使攻击者得以从一个过时分支窃取npm发布令牌

时间线

  1. 存在漏洞的工作流被加入Nx仓库;在master上被回退,但仍存在于一个过时分支
  2. 攻击者向npm发布被植入木马的Nx版本;恶意软件运行AI CLI并泄露密钥,持续数小时
  3. Nx下架恶意版本、撤销令牌并发布安全通告GHSA-cxm3-wv7p-598c
  4. 第二阶段:被盗GitHub令牌被用于将480个账户下约6700个私有仓库改为公开
  5. Wiz报告三个阶段共影响2180个账户和7200个仓库

应对

Nx撤销npm令牌、移除软件包、强制启用2FA和可信发布;GitHub移除了泄露的仓库;受害者被要求轮换全部凭据

当前状态: 已控制

来源(在新标签页打开)

引用此案例

s1ngularity:被植入木马的Nx包武器化Claude和Gemini CLI窃取密钥. AI Threat Watch, 案例 nx-s1ngularity, 2025年8月27日. https://aithreat.io/zh/cases/nx-s1ngularity/

永久链接: https://aithreat.io/zh/cases/nx-s1ngularity/

此案例的其他语言版本: EnglishFrançaisEspañolالعربية中文