Cryptonews

恶意代码渗透到 Arweave 的 JavaScript 存储库中的关键包,嵌入隐形后门。

Source
CryptoNewsTrend
Published
恶意代码渗透到 Arweave 的 JavaScript 存储库中的关键包,嵌入隐形后门。

攻击者在与 Arweave 生态系统链接的 36 个 npm 包中植入了信息窃取程序。它的目标是开发人员凭证、SSH 密钥和 Exodus 加密钱包文件。安全公司 JFrog 将此次攻击追溯到一个受损的维护者帐户。

该恶意软件称为 IronWorm,它使用 Rust 构建。它会在开发人员安装 npm 包时激活。 JFrog 的研究团队发现,一旦运行,它就会扫描受感染的计算机,查找 86 个环境变量和 20 个凭证文件。它追踪 AWS 代币、Anthropic 和 OpenAI API 密钥、npm 身份验证凭证和加密钱包数据。

Arweave 项目包携带隐藏的 Rust 恶意软件

攻击者入侵了一个名为“asteroiddao”的 npm 帐户,该帐户属于 asteroid-dao GitHub 小组,是 Arweave/WeaveDB 去中心化数据库项目的一部分。

与“asteroiddao”帐户关联的所有软件包都在短时间内重新发布,每个新版本都包含位于 tools/ 目录中的 976 KB Linux 文件。

该文件被设置为通过 package.json 中的预安装挂钩自动运行,这意味着它在 npm 开始安装任何内容之前就启动了。受害者所要做的就是运行 npm install。

JFrog 的团队将该文件拆开,发现它的打包方式旨在欺骗标准解包工具。里面有一个大型 Rust 程序,它对字符串进行单独加密,每个字符串都单独锁定,这使得分析变得更加困难。

当这些字符串最终被解码时,他们揭示了 GitHub API 端点、凭证文件的路径、链接到真实 GitHub 用户 ID 的虚假机器人帐户,以及用于将恶意代码注入其他包注册表的模板。

显示与 Arweave 生态系统相关的受感染 npm 包的屏幕截图。资料来源:Jfrog。

被盗的 GitHub 令牌让恶意软件推送提交并感染更多存储库

获取凭据后,IronWorm 使用它们将提交推送到受害者可以访问的存储库中。这些提交将相同的恶意二进制文件植入其他包中,然后可以将其发布到 npm 并危害链中的下一个开发人员。

JFrog 在 9 个 GitHub 组织中发现了 57 个回溯的恶意提交。提交使用了作者姓名“claude”和电子邮件 claude@users.noreply.github.com。时间戳被伪造以匹配每个存储库的最新合法提交。其中一个似乎可以追溯到 13 年前,尽管 GitHub Actions 日志证实所有推送都发生在发现后的几天内。

受影响的组织包括 asteroid-dao、weavedb、ArweaveOasis 以及与开发者“ocrybit”相关的几个个人帐户。

IronWorm 还部署了 eBPF 内核 rootkit 来隐藏在受感染的计算机上。与其运营商的通信通过 Tor 网络进行路由。 Rust 编译器将 rootkit 的源代码留在了二进制文件中,这是一个使分析变得更容易的操作错误。

一个奇怪的现象是,运营商将自己的加密货币钱包恢复短语硬编码到恶意软件中。 JFrog 得出的结论是,这是一种保护措施,可防止窃取者在测试期间窃取攻击者自己的凭据。

恶意软件攻击不断袭击 npm

应用程序安全公司 Ox Security 表示,在攻击蔓延到 npm 上的更多软件包之前,该攻击就被提前发现了。

恶意版本在一天内被标记为已弃用,并且大多数回溯的提交不久后就从 GitHub 中删除。

5 月 14 日,黑客利用了 node-ipc 的不活跃维护者帐户,该软件包每周下载量超过 822,000 次。该漏洞是通过重新注册维护者过期的电子邮件域并重置 npm 密码来完成的。三个受感染的变体具有针对 90 多种开发人员机密的凭据窃取有效负载。

安全公司 Endor Labs 和 StepSecurity 发现了一起并发但不同的攻击,该攻击使用基于 JavaScript 的恶意软件(名为 Binding.gyp),该攻击在同一时间段内执行了类似的注册表中毒和 GitHub Actions 感染。

安装任何受影响的 WeaveDB 软件包的开发人员应轮换所有凭据,检查锁定文件是否有意外版本更改,并在 npm 和 GitHub 帐户上启用双因素身份验证。

恶意代码渗透到 Arweave 的 JavaScript 存储库中的关键包,嵌入隐形后门。 | CryptoNewsTrend