一项新的网络攻击正在从用户发送交易时窃取加密货币,许多专家称其为历史上最大的供应链攻击。黑客通过网络钓鱼邮件入侵了 npm 包维护者的账户。这些邮件看起来像是来自“[email protected]”,复制了真实的 npm 注册表。消息告诉开发人员,除非他们更新其两因素身份验证,否则他们的账户将被锁定。当维护者点击链接时,攻击者获得了他们的登录详细信息,并将恶意软件放置在流行的 npm 包中。
18 个被广泛使用的 JavaScript 库被入侵,包括 chalk、debug 和 ansi-styles。这些包每周总共被下载数十亿次,并被世界各地的开发人员使用。这意味着整个 JavaScript 生态系统可能已经暴露。BleepingComputer 报道称,攻击者向这些库注入了代码,这些代码充当了基于浏览器的拦截器。此代码监视网络流量,并搜索比特币、以太坊、Solana、Tron、Litecoin 和比特币现金的加密交易。当有人发送转账时,恶意软件会在交易签名之前,将真实的钱包地址替换为黑客控制的地址。
安全研究员 Charlie Eriksen 解释说,该恶意软件以多种方式运作。它会更改网站上显示的内容,篡改 API 调用,并欺骗应用程序签署用户无意进行的交易。Ledger 的首席技术官 Charles Guillemet 警告说,该攻击仍在进行中,并表示加密货币用户如果仅使用软件钱包,应避免进行链上交易。硬件钱包用户可以通过在签名之前检查详细信息来保护自己,但任何没有硬件钱包的人都面临着更高的风险。
研究人员还发现,钓鱼基础设施将被盗的详细信息发送到“websocket-api2.publicvm.com”。这表明该攻击得到了很好的协调。此前,npm 曾发生过其他事件,包括今年 3 月使用反向 shell 修补 ethers 包的事件,以及 7 月针对 eslint-config-prettier 的事件。此次活动仍在继续发展,这次攻击者以一种新的方式使用了以太坊智能合约。colortoolsv2 和 mimelib2 这两个 npm 包在以太坊智能合约中隐藏了恶意命令。下载后,这些包会安装第二阶段的恶意软件,从而增加了检测难度。
以太坊智能合约是在区块链上运行的小程序。它们是公开的,并且像开放的 API 一样运作。在这种情况下,黑客使用它们来存储下载恶意软件的链接,因此即使有人检查了该包,他们也可能看不到危险代码。这种创造性的命令和控制方法表明了威胁行为者如何适应以避免被检测到。
攻击者还试图使其 GitHub 存储库看起来值得信赖。他们创建了虚假项目,例如 solana-trading-bot-v2 和 ethereum-mev-bot-v2。这些项目有很多星标、关注者和提交,但大多数都是假的。账户是同时创建的,通常只有一个文件,而自动提交则夸大了数字。这种社会工程手段使存储库对可能在其工作中使用恶意 npm 包的开发人员来说看起来是真实的。
专家警告说,供应链攻击特别危险,因为它们针对的是受信任的工具。通过将恶意软件隐藏在开源库中,黑客可以同时接触到数百万的开发人员和最终用户。仅今年一年,研究人员就在 npm、GitHub 和 PyPI 上发现了 20 多次旨在窃取加密货币的活动。一些使用信息窃取程序,另一些部署了挖矿机,许多依赖于钓鱼来获取敏感数据。
侵害指标 (IOC),例如可疑域名、混淆代码和虚假存储库,可帮助安全团队检测这些威胁。尽管如此,许多用户直到资金消失后才会注意到。目前,开发人员需要在使用之前仔细检查包、维护者和代码。加密货币用户应考虑使用硬件钱包,并在威胁得到控制之前避免进行大额转账。此次攻击表明网络犯罪发展有多快,以及保护软件供应链和数字资产的重要性。