
一场复杂的供应链攻击已攻陷热门的 Nx 构建平台,该平台每周下载量达数百万次,此次攻击导致大规模凭据被盗。
这场被命名为 “s1ngularity” 的攻击,是 2025 年针对开发者生态系统发起的覆盖范围最广的凭据窃取攻击之一。
GitGuardian(代码安全公司)发现,攻击者入侵了 npm 软件源上多个版本的 Nx 软件包(版本 20.9.0 至 21.8.0),植入了凭据窃取恶意软件。该恶意软件会对受感染的开发环境进行系统性扫描。
- Nx 构建平台遭恶意软件攻陷,导致开发者凭据被盗;
- 首次出现利用人工智能工具进行凭据窃取的攻击,不过多数人工智能客户端抵御了此类攻击;
- 超 2349 个机密信息通过 GitHub 仓库被盗取,尽管已开展清理工作,仍有 50% 的机密信息保持有效。
此次攻击体现了供应链攻击手段的新演变:将传统凭据窃取与针对人工智能开发工具的新型攻击向量相结合,并将 GitHub 仓库用作数据窃取的传输基础设施。
该恶意有效载荷实现了一套全面的凭据窃取机制,会对受感染系统进行扫描,以获取多种类型的敏感数据。
恶意软件的攻击目标包括 GitHub 个人访问令牌、npm 认证密钥、SSH 私钥、AWS 凭据、环境变量中的 API 密钥,以及加密货币钱包文件。

(数据范围:0-1000,数据来源:GitGuardian)
扫描程序采用了复杂的文件系统遍历技术,检查常见的配置目录,包括~/.ssh/、~/.aws/,以及各类应用程序专用的凭据存储位置。
窃取的凭据在被传输前,会经过特殊的双重 Base64 编码处理(编码流程:echo $data | base64 | base64)。这种编码方式有两个作用:一是规避基础检测机制,二是在传输过程中保证数据完整性。
随后,经过编码的有效载荷会被传输至公开的 GitHub 仓库,这些仓库的命名遵循固定规则,格式为 “s1ngularity-repository-[随机字符串]”,每个仓库中都包含一个名为 “results.b64” 的文件,文件内存储着经过编码的被盗数据。
GitGuardian 表示,对攻击基础设施的分析显示,该恶意软件还具备破坏性功能:它会修改用户的 Shell 启动文件(~/.bashrc 和~/.zshrc),植入关机命令。当用户打开新的终端会话时,这些命令会导致系统崩溃。
这一二级有效载荷表明,此次攻击同时具备数据窃取和系统破坏两大目标。
“s1ngularity” 攻击的一大创新之处在于,它将目标瞄准了大型语言模型(LLM)客户端配置。
恶意软件会专门枚举主流人工智能命令行界面(CLI)工具的认证令牌和配置文件,这些工具包括 Claude、Gemini 和 Q(亚马逊的人工智能助手)。
这种攻击策略反映出攻击者的认知:人工智能开发工具通常需要较高权限,且能访问敏感的开发环境。
恶意软件试图将 LLM 客户端用作枚举向量,具体方式是生成特制指令,用于盘点系统文件并提取凭据信息。
然而,分析显示,多数 LLM 客户端展现出了意外的防御行为:在 366 个受攻击的目标系统中,仅 26%(95 个)实际执行了恶意枚举命令。
许多 LLM 客户端会明确拒绝看似属于凭据窃取的请求 —— 这在现代开发环境中,或许构成了一种非刻意设计但极具价值的安全控制机制。
此次攻击在开发者生态系统中的影响范围极广,85% 的受感染系统运行的是 macOS 系统,这凸显出该攻击对以苹果系统为主的开发者群体造成的特殊冲击。
在已分析的受攻陷系统中,33% 安装了至少一款 LLM 客户端,这印证了攻击者将这一新兴攻击面作为目标的策略具有合理性。

GitGuardian 的监控基础设施为这些 “临时数据窃取仓库” 提供了独特的可见性:尽管在分析时 GitHub 仅显示约 10 个活跃仓库,但监控系统检测到了 1346 个包含 “s1ngularity-repository” 字符串的仓库。
这种数量差异表明,仓库存在快速删除循环,且仍有开发者在使用受攻陷的软件包版本,导致感染持续发生。
分析发现,这些仓库中共有 2349 个不同的机密信息,其中 1079 个仓库至少包含一个泄露的凭据。
关键问题在于,在发现这些凭据时,约 50% 的凭据仍处于有效状态 —— 这表明凭据吊销流程存在严重延迟。
版权声明·<<<---红客联盟--->>>·免责声明
1. 本版块文章内容及资料部分来源于网络,不代表本站观点,不对其真实性负责,也不构成任何建议。
2. 部分内容由网友自主投稿、编辑整理上传,本站仅提供交流平台,不为该类内容的版权负责。
3. 本版块提供的信息仅作参考,不保证信息的准确性、有效性、及时性和完整性。
4. 若您发现本版块有侵犯您知识产权的内容,请及时与我们联系,我们会尽快修改或删除。
5. 使用者违规、不可抗力(如黑客攻击)或第三方擅自转载引发的争议,联盟不承担责任。
6. 联盟可修订本声明,官网发布即生效,继续使用视为接受新条款。
联系我们:admin@chnhonker.com