npm生态末日降临:Shai-Hulud蠕虫开启供应链攻击新纪元

⛓️ Critical 供应链攻击

2025年9月Shai-Hulud蠕虫事件后,npm供应链攻击进入高威胁阶段。2026年4月,攻击者利用仿冒Bitwarden CLI和SAP CAP模型的恶意包,通过预安装钩子执行多阶段载荷,窃取云凭证、CI/CD令牌并自我复制传播,标志着攻击从孤立事件转向系统化武器化。

来源:Palo Alto Unit42 | 2026-04-24 | 原文链接

🔍 关键发现

  • Shai-Hulud蠕虫实现了自我复制式传播,通过窃取npm和GitHub令牌自动感染并重新发布合法包
  • 2026年4月出现两个新攻击波:仿冒@bitwarden/cli的'第三次降临'和针对SAP生态的'小Shai-Hulud',后者影响约57万周下载量
  • 攻击链使用Bun运行时执行混淆载荷,通过GitHub公共提交API作为隐蔽C2通道,并具备俄罗斯语言环境终止开关

⚔️ 攻击链分析

1. 攻击者发布仿冒包(如@bitwarden/cli或@cap-js/sqlite),修改package.json添加预安装钩子 2. 用户执行npm install时自动运行setup.mjs,下载Bun运行时并执行execution.js 3. 载荷窃取GitHub令牌、npm令牌、云服务凭证等,并利用Python辅助提取GitHub Actions Runner内存中的掩码密钥 4. 通过GitHub公共提交API搜索'OhNoWhatsGoingOnWithGitHub'关键字获取死信令牌,将自身注入受害者可发布的所有包中完成传播

🚩 失陷指标 (IOC)

  • @bitwarden/cli@2026.4.0
  • @cap-js/sqlite@2.2.2
  • @cap-js/postgres@2.2.2
  • @cap-js/db-service@2.10.1
  • mbt@1.2.48
  • github.com/oven-sh/bun (v1.3.13)
  • ctf-scramble-v2混淆层
  • OhNoWhatsGoingOnWithGitHub (C2关键字)

🛡️ 缓解建议

  • ✅ 立即轮换所有暴露的npm令牌、GitHub PAT和云服务凭证
  • ✅ 在npm install前使用npm audit或第三方SCA工具扫描依赖,检查包名是否与官方一致
  • ✅ 监控CI/CD管道中异常的预安装脚本和文件写入行为,特别是setup.mjs和execution.js
  • ✅ 限制npm包的发布权限,启用双因素认证,并定期审计包发布历史

涉及漏洞:[]


⚠️ 本文仅供安全研究与学习,IOC 信息请勿用于非法目的。

[!] CONTACT_CHANNELS

如需商务合作、技术咨询或漏洞反馈,请通过以下离岸节点联系作者。

> PING_AUTHOR (@A1RedTeam)