乐于分享
好东西不私藏

新型 IronWorm 恶意软件攻击 npm 供应链,导致36个软件包被攻陷

新型 IronWorm 恶意软件攻击 npm 供应链,导致36个软件包被攻陷
一种新的供应链攻击已感染了 Node 包管理器 (npm) 索引上的 36 个软件包,这些软件包被感染了名为 IronWorm 的信息窃取恶意软件。
该恶意软件的目标是 86 个环境变量(键值对)和 20 个凭证文件,其中可能包含 OpenAI、AWS、Anthropic 和 npm 凭证、Vault 配置文件、SSH 密钥和 Exodus 加密货币钱包文件。
据供应链和 DevOps 公司 JFrog 的研究人员称,IronWorm 是用 Rust 编写的,隐藏在 eBPF 内核 rootkit 后面,并通过 Tor 网络与运营商通信。
这款基于 Rust 的恶意软件利用窃取的凭据在 npm 上发布内容进行自我传播;这包括与 npm 的可信发布工作流程相关的密钥。
一旦它攻破了开发人员或 CI 环境,它就可以发布受害者拥有的软件包的木马版本,然后感染其他开发人员和 CI 系统。
这种行为在概念上与Shai Hulud类似,后者的代码最近已发布在 GitHub 上。尽管 JFrog 的研究人员没有发现 IronWorm 和 Shai Hulud 之间存在明确的联系,但他们观察到这两种供应链攻击中都使用了相同的提交名称。
这表明,新的恶意软件可能是 TeamPCP 的有效载荷的演变,因为 IronWorm 似乎是“一个拥有自己基础设施的行动中精心定制的植入程序”。
据 JFrog 称,最新攻击始于一个名为“asteroiddao”的被入侵帐户,该帐户发布了包含通过“preinstall”执行的 Rust ELF 二进制文件的软件包版本,并将恶意提交推送到存储库中。
提交者显示为“claude”,时间戳指向数年前,有些甚至长达13年,尽管这些提交是最近几天才提交的。这很可能难以调查。
JFrog 的调查结果中一个值得注意的要素是,该恶意软件利用 GitHub Actions 来传递窃取的密钥。JFrog 解释说,该恶意软件会将密钥序列化为一个单独的值,然后“将其写入一个看似无害的文件,就像是代码检查或格式化输出一样”。
该流程的最后一步是将文件作为构建产物上传,任何有访问权限的人都可以下载该文件。这样,攻击者就可以完全避免使用外部命令与控制(C2)服务器。
然而,研究人员指出,这种交付机制并未在所分析的 IronWorm 供应链攻击中使用。
另一项发现的特殊之处在于,攻击者将自己加密货币钱包的恢复短语硬编码到了程序中。研究人员表示,这样做的唯一原因是攻击者不希望恶意软件在测试阶段窃取该短语。
应用安全公司Ox Security表示,IronWorm 攻击被及早发现并阻止,避免其扩散到 npm 上更流行的软件包。
该公司在报告中提供了所有受影响的软件包名称及其版本列表,并建议开发人员升级到修复版本、轮换密钥,并为所有帐户启用双因素身份验证 (2FA)。
与此同时,Endor Labs和StepSecurity发现了一起非常相似但又不同的攻击,该攻击涉及一种名为 binding.gyp 的基于 JavaScript 的恶意软件,该恶意软件会执行注册表投毒和 GitHub Actions 感染,并且在同一时间段内发生。
信息来源:BleepingComputer