
多家安全厂商发出警告,npm注册表正遭遇第二波攻击浪潮,其手法与2025年9月曝光的Shai-Hulud攻击如出一辙。根据Aikido、HelixGuard、Koi Security、Socket和Wiz的报告,这场被命名为Sha1-Hulud的供应链攻击已入侵数百个npm软件包,波及超2.5万个代码库。
Wiz研究人员指出:"该攻击引入了在预安装阶段执行恶意代码的新变种,显著增加了构建和运行时环境的潜在风险。"与之前攻击类似,最新活动同样将被窃取的凭证上传至GitHub,但此次仓库描述变更为:"Sha1-Hulud:二次降临"。
攻击手法升级
前次攻击通过篡改合法软件包植入恶意代码,利用TruffleHog凭证扫描器搜索开发者机器中的敏感信息并外传。被感染版本还能通过自我复制方式,将恶意代码重新发布至同一维护者名下的其他npm包中。
最新攻击中,攻击者在package.json文件添加预安装脚本("setup_bun.js"),该脚本会秘密安装或定位Bun运行时环境,并执行捆绑的恶意脚本("bun_environment.js")。恶意负载通过两种工作流实施攻击:
- 将被感染机器注册为名为"SHA1HULUD"的自托管运行器,添加包含注入漏洞的.github/workflows/discussion.yaml工作流,攻击者可通过GitHub仓库讨论功能在受感染机器上执行任意命令
- 窃取GitHub密钥配置区的凭证并打包上传,下载完成后立即删除工作流以掩盖痕迹
破坏性升级
Wiz发现约350名用户的2.5万余个代码库受影响,过去几小时平均每30分钟新增1000个感染仓库。Koi Security指出,第二波攻击更具侵略性——当恶意程序无法完成认证或建立持久化时,会尝试销毁受害者整个主目录,包括当前用户主文件夹下所有可写文件。但该擦除功能仅在满足以下条件时触发:
- 无法认证GitHub
- 无法创建GitHub仓库
- 无法获取GitHub令牌
- 无法找到npm令牌
安全研究人员表示:"这意味着当Sha1-Hulud无法窃取凭证、获取令牌或建立任何外传通道时,就会转向灾难性数据销毁。这标志着攻击者策略从单纯数据窃取升级为惩罚性破坏。"
防护建议
建议企业立即采取以下措施:
- 扫描所有终端设备检查受影响软件包
- 立即移除受感染版本
- 轮换所有凭证
- 审计代码库中的持久化机制,重点检查.github/workflows/目录下是否存在shai-hulud-workflow.yml等可疑文件或异常分支
参考来源:
Second Sha1-Hulud Wave Affects 25,000+ Repositories via npm Preinstall Credential Theft
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



