网络安全公司 CrowdStrike 在 2024 年 7 月引起全球级别的 PC 蓝屏死机事件,现在 CrowdStrike 再次出现安全事件并且潜在危害可能并不比 800 万台 PC 蓝屏死机要差。网络安全研究人员 Brian Krebs 发现目前约有 25 个 NPM 软件包受到名为沙虫 (Shai-Hulud) 恶意软件的影响,沙虫是知名科幻小说《沙丘》中战力非常彪悍的虚构生物。
沙虫恶意软件的破坏力在于:当开发者从 NPM 安装已经被沙虫感染的软件包时,沙虫就会在这名开发者的机器上搜索各种访问令牌 (Token),然后利用这个令牌感染这名开发者发布或具有维护权限的其他软件包。
研究人员将此次的沙虫恶意软件描述为是能够自我复制的蠕虫,通过自我复制可以在短时间内感染海量的 NPM 软件包,目前已知至少有 187 个 NPM 软件包已经被感染。
其中 CrowdStrike 提供或维护的 25 个流行的 NPM 软件包也被感染,这意味着 CrowdStrike 工程师的设备也同样被感染,收到通知后 CrowdStrike 火速删除被感染的软件包避免蠕虫病毒继续传播。
值得注意的是 NPM 软件包被感染只是我们能够看到的现象之一,因为沙虫恶意软件还会搜寻其他凭据例如 AWS、Azure、GCP、GitHub、npm,甚至还会写入 GitHub Actions 工作流文件,在开发者运行 CI/CD 期间泄露机密信息,确保在初始感染后还能继续长期访问。
目前我们并不清楚 CrowdStrike 或其他开发者的 AWS 之类的凭据是否泄露,如果也被病毒窃取则可能会泄露海量机密数据,只不过 CrowdStrike 或其他公司暂未透露详情。
同样可怕的是沙虫病毒还可以继续潜伏,只要有一名开发者目前仍然运行包含病毒的软件包,那么就有可能通过这名开发者继续传播病毒并重新引起大范围感染事件。
近期使用 NPM 存储库安装软件包的开发者应当仔细检查,这里有目前已知受感染的软件包清单:https://www.koi.security/blog/shai-hulud-npm-supply-chain-attack-crowdstrike-tinycolor