从"沙虫"自复制恶意软件发起的npm供应链大攻击中汲取的教训
2025年9月,JavaScript生态系统遭受史上最大规模的供应链攻击"沙虫"。攻击者通过钓鱼邮件入侵npm软件包维护者账户,利用恶意脚本实现自复制传播,感染477个软件包并收集大量凭证。此次事件凸显AI工具在犯罪中的应用及供应链安全面临的严峻挑战。 2025-9-18 00:44:50 Author: www.freebuf.com(查看原文) 阅读量:9 收藏

freeBuf

主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

沙虫NPM供应链攻击

2025年9月,JavaScript生态系统遭遇了有史以来最复杂、破坏性最强的供应链攻击之一。代号为"沙虫"(Shai-Hulud)的新型自复制蠕虫感染了超过477个npm软件包,成为npm注册表历史上首个成功实现自动化传播的攻击活动。

攻击手法分析

这次攻击始于针对npm软件包维护者的钓鱼操作。攻击者通过伪造npm官方注册表的虚假域名npmjs[.]help发送精心设计的邮件,要求维护者"更新"其多因素认证凭证,否则将面临账户锁定风险。

沙虫NPM供应链攻击

Unit 42评估认为,攻击者很可能利用大型语言模型(LLMs)协助编写恶意bash脚本,这反映出网络犯罪活动中AI工具被武器化的趋势。

"沙虫"自复制恶意软件的技术特点

该恶意软件的核心创新在于其通过NpmModule.updatePackage函数实现的自复制机制。与传统供应链攻击不同,"沙虫"能够自动识别并感染被入侵开发者维护的其他软件包。

传播过程包括:下载现有软件包压缩包、修改package.json文件注入恶意postinstall脚本、嵌入约3.6MB的压缩后bundle.js有效载荷、重新打包并发布到npm注册表。

沙虫NPM供应链攻击时间线

受影响软件包分析

最早确认的恶意软件包[email protected]发布于2025年9月14日。攻击在2025年9月15日达到高峰,当时安全研究员Daniel Pereira报告了每周下载量超过220万次的@ctrl/[email protected]软件包被入侵。

高影响软件包包括:

攻击指标(IOCs)与检测方法

安全团队可通过以下文件系统特征识别潜在入侵:

  • 恶意bundle.js文件(SHA-256哈希值46faab8ab153fae6e80e7cca38eab363075bb524edd79e42269217a083628f09)
  • .github/workflows/shai-hulud-workflow.yml- 恶意GitHub Actions工作流
  • Git仓库中创建的shai-hulud分支
  • 名为"Shai-Hulud"的公开仓库

凭证收集与数据外泄

"沙虫"实施了全面的凭证收集策略,优先获取高价值凭证,包括npm发布令牌、GitHub个人访问令牌(PATs)以及AWS、Google云平台和Microsoft Azure的云服务凭证。

恶意软件采用双通道外泄策略:主要通过webhook.site端点进行即时外泄,同时在被入侵账户中创建名为"Shai-Hulud"的公开GitHub仓库存储凭证转储。

经验教训与未来影响

"沙虫"攻击标志着供应链安全的分水岭时刻,表明传统安全措施难以应对以CI/CD速度运行的自传播威胁。该攻击的成功凸显了组织在依赖项管理和软件包验证方法上需要进行根本性变革。

未来供应链安全必须发展以应对已知威胁,以及攻击者不断开发的新型攻击方法。从这次事件中汲取的经验教训不仅应指导技术安全改进,还应影响政策变更、社区实践和组织安全策略。

参考来源:

Lessons Learned from Massive npm Supply Chain Attack Using “Shai-Hulud” Self-Replicating Malware

免责声明

1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。

2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。

3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。

本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)


文章来源: https://www.freebuf.com/articles/web/449304.html
如有侵权请联系:admin#unsafe.sh