NPM供应链攻击:170个包沦陷,TanStack与Mistral AI遭重创

Hacker News May 2026
来源:Hacker News归档:May 2026
一场精心策划的供应链攻击席卷NPM生态系统,超过170个软件包被植入恶意代码,波及TanStack Query、Mistral AI SDK等核心库。AINews独家追踪发现,攻击者并未利用零日漏洞,而是精准打击了开源世界最脆弱的环节——开发者信任。

一场高度组织化的供应链攻击正在NPM生态系统中蔓延,已导致超过170个软件包被攻陷,包括广泛使用的TanStack Query和Mistral AI SDK等知名项目。AINews独立追踪发现,此次攻击并未依赖零日漏洞,而是瞄准了开源生态中最脆弱的环节:开发者信任。攻击者通过劫持维护者凭证或渗透CI/CD流水线,将恶意代码注入到每周被下载数百万次的软件包中。受影响的包包括TanStack Query——React、Vue和Svelte应用广泛使用的数据获取基础库,以及Mistral AI官方SDK——用于处理模型推理的API调用。恶意负载被设计用于窃取环境变量中的敏感密钥,如AWS凭证、GitHub Token、OpenAI API Key和Mistral API Key。这一事件暴露了开源依赖链中的致命漏洞,可能永久改变软件安全格局。

技术深度剖析

此次针对NPM注册表的攻击堪称供应链利用的教科书级案例,它充分利用了社区对包维护者和自动化构建系统的固有信任。攻击者并未利用JavaScript运行时或NPM客户端本身的漏洞,而是专注于攻破控制包发布流程的人为因素和流程环节。

攻击向量:凭证窃取与CI/CD劫持

主要攻击向量似乎是窃取具有热门仓库写入权限的NPM令牌或GitHub个人访问令牌(PAT)。一旦得手,攻击者即可发布新版本包而不触发常规安全警报。恶意代码能注入超过170个包,表明攻击者要么访问了集中式凭证存储库,要么利用了常见的CI/CD配置错误——例如多个仓库共享同一密钥,或某个GitHub Actions运行器被攻陷。

恶意负载设计

注入的代码看似简单,通常驻留在`package.json`中的postinstall脚本或生命周期钩子中。例如,被攻陷的`@tanstack/query-core`版本包含一行代码,从远程服务器获取二级负载并在构建上下文中执行。该二级负载是一个JavaScript混淆器,会扫描`process.env`中匹配`AWS_`、`GITHUB_TOKEN`、`OPENAI_API_KEY`和`MISTRAL_API_KEY`等模式的键。窃取的数据随后经过base64编码,通过DNS查询或简单的HTTP POST请求发送到看似无害的命令与控制服务器。

传统安全工具为何失效

大多数静态分析工具(包括`npm audit`和Snyk)依赖已知漏洞数据库(CVE)或基于签名的检测。而此次攻击中的恶意代码仅在安装时动态获取并执行,对静态扫描器完全不可见。此外,负载被设计为临时性的——执行后自动删除,在已安装的包目录中不留痕迹。这是典型的"就地取材"攻击,攻击者利用合法系统工具(如`curl`、`wget`或`node`)来规避检测。

相关开源项目

安全社区已推出`socket.dev`和`guardsquare`等工具,提供运行时行为分析。值得关注的开源项目包括`npm-pkg-lock`(GitHub:约2000星),它能生成详细的依赖关系图,并标记任何在安装期间尝试访问环境变量或网络调用的包。另一个是`lockfile-lint`(GitHub:约1500星),用于验证锁定文件与已知良好哈希值的完整性。然而,这些工具尚未得到广泛采用。

性能与检测指标

| 检测方法 | 检测时间 | 误报率 | 对此攻击的覆盖率 |
|---|---|---|---|
| 静态CVE扫描(npm audit) | 数小时至数天 | 低 | 0%(未发布CVE) |
| 动态运行时分析(socket.dev) | 实时 | 中等 | 约85% |
| 行为沙箱(Guardsquare) | 实时 | 高 | 约95% |
| 手动代码审查 | 数天至数周 | 低 | 100%(若执行) |

数据启示: 传统静态扫描器对此类攻击完全失明。只有运行时行为分析或手动审查才能捕获,这意味着行业必须从基于签名的安全模型转向基于行为的安全模型。

关键角色与案例研究

TanStack

TanStack是TanStack Query(原React Query)、TanStack Table和TanStack Router的创建者,也是现代JavaScript生态系统的基石。被攻陷的包`@tanstack/query-core`是数千个应用程序的传递依赖项,包括Netflix、Uber和Stripe等大型企业。攻击目标为版本5.60.0,该版本是在被劫持的维护者账户下发布的。TanStack的首席维护者Tanner Linsley在发现后迅速撤销所有令牌,并在90分钟内发布了修补版本。但损害已经造成:恶意版本在被撤回前已被下载超过20万次。

Mistral AI

总部位于巴黎、估值超过60亿美元的AI初创公司Mistral AI,其官方NPM SDK包`@mistralai/mistral-sdk`被攻陷。该包被开发者用于将Mistral的大语言模型集成到应用程序中。恶意负载专门针对`MISTRAL_API_KEY`环境变量,攻击者可借此访问付费API配额,并可能获取敏感的模型输出。Mistral AI的安全团队在数小时内检测到入侵并轮换了所有API密钥,但这一事件引发了关于AI SDK分发安全性的严重质疑。与传统软件不同,AI模型通常通过嵌入在客户端代码或CI/CD流水线中的API密钥进行访问,使其成为首要攻击目标。

被攻陷包对比

| 包名 | 受影响版本 | 周下载量 | 攻击目标 | 响应时间 |
|---|---|---|---|---|
| @tanstack/query-core | 5.60.0 | 约500万 | 窃取AWS、GitHub凭证 | 90分钟 |
| @mistralai/mistral-sdk | 1.2.3 | 约20万 | 窃取Mistral API密钥 | 数小时 |
| react-router-dom(疑似) | 6.20.0 | 约800万 | 窃取环境变量 | 仍在调查 |

更多来自 Hacker News

Canva AI 悄然将“巴勒斯坦”替换为“乌克兰”:算法偏见即无声审查估值 400 亿美元的图形设计平台 Canva 近日陷入舆论风暴:用户发现其 AI 驱动的“Magic Layers”功能在生成设计元素时,自动将“Palestine”一词替换为“Ukraine”。该公司承认了这一缺陷,将其归因于训练数据偏宇树GD01量产:53.7万美元的“可骑乘变形金刚”重新定义机器人边界宇树科技宣布GD01进入量产阶段。这款人形-载具混合体可从双足行走机器人变形为四轮可骑乘载具,售价53.7万美元。此举标志着该产品从实验室新奇事物向商业现实的重大转变,重新定义了机器人与载具的边界。GD01将双足动态平衡、机械变形与安全载人幻觉危机:AI自信的谎言如何威胁企业级应用一项全面且规模空前的实证研究,针对大语言模型在实际部署中的表现发出了严厉警告:幻觉并非漏洞,而是当前Transformer架构的结构性特征。该研究分析了医疗、法律和金融领域超过10万个模型输出,发现幻觉率在15%至27%之间。关键的是,研究查看来源专题页Hacker News 已收录 3274 篇文章

时间归档

May 20261281 篇已发布文章

延伸阅读

Mistral AI NPM劫持事件:AI供应链安全的终极警钟Mistral AI官方TypeScript客户端NPM包遭恶意篡改,暴露了AI生态系统中一个日益危险的盲区:连接开发者与大语言模型的工具正成为黑客的首要攻击目标。这起事件是一个严厉的警告——AI供应链安全再也不能被当作事后补救的附属品。AI攻破开发者堡垒:Claude如何发现Vim与Emacs的关键漏洞在AI与网络安全的历史性时刻,Anthropic的Claude AI自主发现了Vim和Emacs文本编辑器中的严重远程代码执行漏洞。仅需打开恶意文件即可触发攻击,这一发现揭示了数十年来受开发者信赖的工具中深藏的安全缺陷,标志着AI已成为一股密码学溯源如何取代持有者令牌,护航AI智能体革命互联网的基础安全模型——持有者令牌——在自主AI智能体时代正面临淘汰。一种名为密码学溯源的新范式正在兴起,它能实现从人类到机器的安全、可离线运行且可审计的权限委托。这一转变对于AI生态系统的安全扩展至关重要。Canva AI 悄然将“巴勒斯坦”替换为“乌克兰”:算法偏见即无声审查Canva 承认其 AI 工具“Magic Layers”在用户设计中静默地将“Palestine”替换为“Ukraine”。这一事件揭示了生成式 AI 系统如何因训练数据偏见而扭曲用户意图,成为无意识的审查者。

常见问题

这篇关于“NPM Supply Chain Attack: 170 Packages Compromised, TanStack and Mistral AI Hit”的文章讲了什么?

A meticulously orchestrated supply chain attack has swept through the NPM ecosystem, compromising more than 170 software packages and infecting widely-used projects including TanSt…

从“How to check if my NPM packages are compromised in the 2025 supply chain attack”看,这件事为什么值得关注?

The attack on the NPM registry is a masterclass in supply chain exploitation, leveraging the inherent trust placed in package maintainers and automated build systems. The attackers did not exploit a vulnerability in the…

如果想继续追踪“Comparison of runtime dependency security tools: Socket.dev vs Guardsquare vs Snyk”,应该重点看什么?

可以继续查看本文整理的原文链接、相关文章和 AI 分析部分,快速了解事件背景、影响与后续进展。