Keyv 遭 Shai-Hulud 供应链攻击
Keyv and friends compromised in active Shai-Hulud supply chain attack

2026 年 8 月 4 日,拥有月均 6.19 亿下载量的 keyv 及其关联库遭遇名为 Shai-Hulud 的供应链攻击。攻击者入侵了维护者的 GitHub 账号,向 main 分支注入恶意文件并发布带签名的毒化版本。这些包在 npm install 时会自动执行 setup.mjs,静默下载 Bun 运行时代码,进而窃取 npm、GitHub CLI、AWS 及 HashiCorp Vault 等敏感凭证。更可怕的是,该恶意载荷具备蠕虫特性,能横向感染其他维护者的包。截至发稿,已有 868 个包、1381 个版本沦陷,月安装量超 20 亿次。
该恶意载荷还包含类似蠕虫的传播功能,能够感染那些安装过被攻破包的其它维护者的软件包。
HN 评论区
138- atechboy
哎哟。这得留个疤了。
真糟糕,我们这套依赖系统脆弱得像玻璃下巴,这其实就是供应链攻击之所以奏效的根本原因。
而且清理起来也特别难。如今,你(作为黑客)很可能会派出代理,在每一个被攻破的仓库、应用或网站上线的瞬间就加以利用,所以哪怕最初的烂摊子被清理了,依然会引发大量的连锁妥协。
- xnorswap
FBI 在这事里去哪了?为什么还没人被抓?这可是特大罪行。
- ChrisMarshallNY
到了这一步,任何新增预安装钩子(pre-install hook)的包,如果之前没有的话,都应该被拒绝,并受到极度怀疑。
是时候彻底废除预安装/后安装钩子了。先从禁止任何新的钩子开始。
- jesse_dot_id
更新了我自 2025 年以来关于这些攻击的文档:
1. NPM 供应链攻击技术:https://npm-supply-chain-attack-techniques.pagey.site/
2. NPM 生态系统威胁报告:https://npm-supply-chain-attacks-25-26.pagey.site/
- freakynit
echo "min-release-age=5" >> ~/.npmrc
如果你从事 Node 开发,这应该是你的默认最低设置。