对 Node.js 开发者的网络钓鱼攻击导致 npm 包中出现恶意代码,目标是以太坊和 Solana 钱包,影响了超过 20 亿次每周下载。
执行摘要
攻击者通过网络钓鱼攻击,入侵了广泛使用的 npm 包,注入了旨在窃取加密货币的恶意代码。此次攻击于 2025 年 9 月 8 日被发现,通过拦截和重定向交易,目标是以太坊和 Solana 钱包。尽管攻击者的直接经济收益微乎其微,但此次事件暴露了软件供应链中的关键漏洞,并引发了对 Web3 生态系统安全性的担忧。
事件详情
备受尊敬的开源开发者 Josh Junon(又名 qix)通过伪装成 npmjs.help 的网络钓鱼电子邮件遭到入侵。攻击者获得了 Junon 的 npm 账户控制权,并向 18 个包注入了恶意代码,其中包括 chalk、debug 和 ansi-styles 等流行库,影响了超过 20 亿次每周下载。恶意代码的目标是加密货币交易,特别是监控网络流量中的 Ethereum、Solana、Bitcoin、Tron、Litecoin 和 Bitcoin Cash 钱包地址。该代码会重写交易目标,用攻击者控制的地址替换合法地址,并修改未签名的交易,在用户签名之前修改收款人地址和金额。
市场影响
此次攻击凸显了 Web3 生态系统在供应链妥协方面的脆弱性。尽管 币安 表示没有用户数据或资产受到损害,但此次事件引发了对开源软件安全性和针对加密货币用户的大规模攻击潜力的更广泛担忧。此次事件可能导致对软件依赖性进行更严格的审查,并推动在 Node.js 生态系统内实施更严格的安全措施。安全团队面临更新系统的巨大成本。
专家评论
“如今,即使是开源软件也不再安全。Web3 将重新定义 Web2 的安全性,” 币安 联合创始人 赵长鹏(CZ) 在社交平台 X 上表示。
硬件钱包制造商 Ledger 的首席技术官 Charles Guillemet 指出,恶意代码已传播到下载量超过 10 亿的软件包中。
更广阔的背景
此次攻击强调了软件供应链中强大安全措施的重要性。缓解类似攻击的建议包括:定期审计 npm 依赖项,使用 package-lock.json 确保依赖项版本一致,验证包发布者,并监控意外的包更新。此次事件反映了网络犯罪分子通过复杂的网络钓鱼活动和供应链攻击来瞄准加密货币基础设施的日益增长的趋势。正如安全研究人员指出的那样,2025 年几乎所有主要攻击都针对加密货币基础设施,网络钓鱼活动被证明比零日漏洞更有效。
