今年9月,NPM仓库发生大规模供应链攻击Shai-Hulud,攻击者在两天内向超过500个包植入蠕虫。如今,类似供应链攻击再次出现,引发多家安全公司警告。
11月24日,包括Aikido、HelixGuard、JFrog、Koi Security、ReversingLabs、SafeDep、Socket、Step Security和Wiz在内的九家安全公司不约而同发出警告,称检测到新一轮Shai-Hulud蠕虫攻击活动。攻击者在11月21日至23日期间上传了超过1,000个NPM包,感染了2.7万个GitHub仓库。本次事件影响了Zapier、ENS Domains、PostHog和Postman等热门项目。
这些蠕虫包不仅在NPM仓库中自我复制,一旦被部署到开发环境,就会在Windows、Linux和macOS系统中快速扩散。它们利用扫描工具TruffleHog挖掘泄露的敏感信息,包括AWS、GCP和Azure的云账户凭证,并滥用本地缓存的凭据,通过API窃取AWS Secrets Manager和Google Cloud中存储的身份凭证。随后,蠕虫将获取的数据上传至公开的GitHub仓库,并自我复制,将新包上传至NPM。目前,相关攻击仍在持续。上述安全公司将此次攻击称为“Shai-Hulud 2.0”或“Sha1-Hulud”。
与两个月前的攻击相比,本次攻击有显著不同:恶意NPM包在执行过程中会安装名为bun的工具,并用其运行真正的恶意代码;恶意包会根据窃取的数据生成随机名称的仓库;本次攻击一次可感染100个NPM包,是上一轮攻击的五倍。值得注意的是,若恶意包无法通过GitHub或NPM的身份验证流程,它会删除受害者电脑用户目录下的所有文件。
关于此次事件的影响范围,部分安全公司披露了更多细节并持续追踪进展。Wiz表示,受影响的GitHub用户接近500人,确认泄露的敏感信息包括775个GitHub访问令牌、373个AWS凭证、300个GCP凭证和115个Azure凭证。
更令人担忧的是,此次攻击仍在加速,每半小时就会生成1,000个新仓库。尽管GitHub已采取行动,撤销权限、将恶意仓库设为私有并发出通知,但由于被盗凭证在多个账户间广泛传播,许多组织仍持续暴露在风险中。截至协调世界时(UTC)11月26日上午9时,仍有数百家企业受到影响。
尽管此次攻击主要针对NPM生态,但已开始波及其他软件开发生态。Socket指出,11月25日他们在Maven Central仓库发现具有类似特征的恶意包org.mvnpm:posthog-node:4.18.1,其中嵌入了基于bun的有效载荷和恶意加载器。这表明PostHog项目在NPM和Maven生态系统中同时被Sha1-Hulud渗透,目前PostHog与Maven Central均已介入处理。