写点什么

NPM 生态系统遭受了两次基于 AI 的凭证窃取供应链攻击

作者:Matt Saunders

  • 2025-10-23
    北京
  • 本文字数:1660 字

    阅读完需:约 5 分钟

大小:834.51K时长:04:44
NPM生态系统遭受了两次基于AI的凭证窃取供应链攻击

近几个月来,Node 包管理器(npm)生态系统遭受了两次主要的供应链攻击,影响了数百个包,并使开发人员面临凭证被盗和数据泄露的风险。这些事件的攻击向量显示了 AI 赋能的开源软件依赖关系如何被破坏的演化。

 

在 2025 年 8 月 26 日,广泛使用的 Nx 构建系统包的多个恶意版本被发布到 npm 注册表,这次攻击被称为“s1ngularity”。在研究人员Merav Bar和Rami McCarthy的一篇文章中,网络安全公司 Wiz 解释了这些版本如何包含旨在收集敏感开发者资产的恶意脚本,包括加密货币钱包、GitHub 和 npm 令牌和 SSH 密钥。受影响的包包括 @nrwl/nx、@nx/devkit 以及几个其他相关包。

 

攻击者将恶意软件嵌入到一个名为 telemetry.js 的文件中,该文件系统地搜索敏感文件,包括钱包、密钥库和。下载包所在的 MacOS 和 Linux 系统上的 env 文件和 SSH 密钥。该活动将已安装的 AI 命令行工具武器化,在它们运行时加上危险标志,如 --dangerously-skip-permissions--yolo--trust-all-tools ,以窃取文件系统内容。Bar 和 McCarthy 观察到,“这种由 AI 驱动的活动在数百个案例中取得了成功,尽管 AI 供应商护栏有时会介入。”

 


被盗数据被编码并上传到攻击者控制的 GitHub 存储库。研究人员观察到超过 1000 个有效的 GitHub 令牌,许多套有效的云凭证和 NPM 令牌,以及大约 2 万个其他文件。攻击分为两个阶段。第一阶段涉及初始凭证盗窃和存储库创建。2025 年 8 月 27 日上午 9 点 UTC,GitHub 禁用了所有攻击者创建的存储库,但 8 小时的暴露窗口已经允许黑客下载了数据。第二阶段始于 8 月 28 日,当时攻击者使用他们收集的受损 GitHub 令牌将私有存储库公开,并重命名它们以匹配 s1ngularity-repository-#5letters#的模式。这影响了超过 400 个用户和组织,以及超过 5500 个存储库。

 

在 LinkedIn 上,McCarthy提供了进一步的评论

 

我们看到超过 5500 个私有仓库使用泄露的凭据被公开……然而许多组织仍然没有撤销他们的 GitHub 令牌。有点疯狂的是,pull_request_target 仍然没有得到适当的使用。

 

在 Reddit 上,用户cybersec_nerd42观察到

 

关于 s1ngularity,让我感到害怕的不仅是凭证被盗,还有使用 AI CLI 工具,如 Claude 和 Gemini 来自动化侦查。这是一个转折点,攻击者不再需要真正的 LLM 越狱,他们只是将 API 链接起来。

 

另一次但相关的攻击针对 CrowdStrike 和其他人的 npm 包。Socket.dev研究人员确定这是正在进行的“Shai-Hulud”攻击的延续,该攻击先前已经破坏了 tinycolor 和其他 40 个包。他们解释了这种恶意软件包括一个脚本,下载并运行 TruffleHog(一个合法的秘密扫描器)并寻找令牌和云凭证。

 

Palo Alto Networks 的 Unit 42 也发表了一篇关于Shai-Hulud攻击的帖子。他们解释说,鉴于评论和表情符号的使用,他们适度相信攻击者使用了 AI 来生成恶意脚本。“s1ngularity”攻击也显示出 AI 生成的迹象,这表明 LLM 正在被更广泛地用于攻击供应链。

 

Socket.dev 继续解释说,Shai-Hulud 代表了复杂的蠕虫行为,因为它通过自动修改和重新发布包,以及添加 postinstall 脚本来确保蠕虫在用户安装受损包时自动运行,从而继续传播链。攻击最终破坏了 526 个包,包括许多 CrowdStrike 包,如 @crowdstrike/commitlint、@crowdstrike/falcon-shoelace 和 @crowdstrike/foundry-js。恶意软件将数据外泄到硬编码的 webhook 端点,并创建 GitHub Actions 工作流程,以帮助它传播到最初被感染的主机之外。

 

Bleeping Computer上的一条评论指出了一个更广泛的担忧:

 

使用 AI 将构建工具武器化是新的网络钓鱼。最薄弱的环节不再是人——而是没有人审计的 CI 管道。

 

Step Security的帖子提供了一个建设性的反论点:

 

Shai-Hulud 变体不是什么宏大的 AI 阴谋——它利用了普通的凭证扩散。如果你运行具有 repo writers 和 npm publish 权限的 CI 运行器,承认吧——你就是攻击面。

 

这两次攻击都展示了受损凭证如何在整个开发生态系统中级联,被盗令牌使进一步的包破坏和存储库访问成为可能,Unit 42 的帖子认为“这些攻击以持续集成和持续交付(CI/CD)的速度传播,这对整个生态系统构成了持久且日益增加的安全挑战。”

 

原文链接:

https://www.infoq.com/news/2025/10/npm-s1ngularity-shai-hulud/

2025-10-23 12:587036

评论

发布
暂无评论

在没有递归的情况下如何反转单链表?

InfoQ IT百科

Dubbo如何处理业务异常,这个一定要知道哦!

爱好编程进阶

Java 面试 后端开发

Elasticsearch 中为什么选择倒排索引而不选择 B 树索引

爱好编程进阶

Java 面试 后端开发

2021最新一次Java面试,快手三面一轮游,如今已拿意向书

爱好编程进阶

Java 面试 后端开发

如何在没有递归的情况下通过对给定二叉树执行中序遍历来打印所有节点?

InfoQ IT百科

操作系统国产化的难点是什么?

InfoQ IT百科

将博客搬至CSDN

爱好编程进阶

2021最新Java面试标准,26个技术点一千多道面试题全曝光,赶紧学

爱好编程进阶

Java 面试 后端开发

如何在给定数组中执行二元搜索?

InfoQ IT百科

如何实现冒泡排序算法(bubble sort algorithm)?

InfoQ IT百科

“迈向元宇宙的一小步”鲁班会开发者深度论坛落地北京

华为云开发者联盟

音视频 opengauss 华为云 元宇宙 鲁班会

1000道阿里巴巴初级~高级Java工程师面试题(含答案

爱好编程进阶

Java 面试 后端开发

162基于springboot宠物管理系统

爱好编程进阶

Java 面试 后端开发

35K成功入职蚂蚁金服,现分享面试Java后端经历「内含面试题

爱好编程进阶

Java 面试 后端开发

浅析Redis分布式集群倾斜问题

五分钟学大数据

redis 4月月更

CDH+Kylin三部曲之二:部署和设置

爱好编程进阶

Java 面试 后端开发

disruptor笔记之一:快速入门

爱好编程进阶

Java 面试 后端开发

1000页神仙文档,连阿里P8面试官都说太详细了,面面俱到!搞懂这些直接P6+

爱好编程进阶

Java 面试 后端开发

如何使用堆栈算出两个链表的总和?

InfoQ IT百科

在不使用任何库的情况下,如何反转给定句子中的单词?

InfoQ IT百科

5年crud“经验”

爱好编程进阶

Java 面试 后端开发

GPU微架构回顾

Finovy Cloud

GPU服务器 GPU算力

给定一个乱序数组,如何搜索最大和最小元素?

InfoQ IT百科

2021年阿里、腾讯、百度

爱好编程进阶

Java 面试 后端开发

3 个方法,教你提升程序员的自我价值

爱好编程进阶

Java 面试 后端开发

如何实现迭代快速排序算法(iterative quicksort algorithm)?

InfoQ IT百科

axios发送post请求,springMVC接收不到数据问题

爱好编程进阶

Java 面试 后端开发

ClassUtils常用方法总结

爱好编程进阶

Java 面试 后端开发

Kubernetes 中数据包的生命周期 -- 第 2 部分

Se7en

Activiti 自定义表单流程(全流程演示)

爱好编程进阶

Java 面试 后端开发

Bootstrap Table数据表格的使用指南

爱好编程进阶

Java 面试 后端开发

NPM生态系统遭受了两次基于AI的凭证窃取供应链攻击_AI&大模型_InfoQ精选文章