每日讯闻2025年09月09日 09:00消息,黑客通过钓鱼攻击劫持npm软件包,涉及debug等十余个高频库,周下载量超26亿次。
9月9日,网络安全机构AikidoSecurity发布了一起针对npm软件包库的黑客攻击事件。
据介绍,黑客通过钓鱼邮件入侵知名开发者JoshJunon(用户名qix)等人的账户,随后在至少18个高频下载的软件包中植入恶意代码,这些受影响的包周下载量总计达到26亿次。
qix表示,他收到的钓鱼邮件发自support@npmjs.help(npm官网实际为npmjs.com),声称用户需要更新双重验证认证,否则账户将在2025年9月10日被锁定,以此诱导开发者点击钓鱼链接并泄露账号信息。
据称,恶意网站上的登录表单会将用户输入的信息发送到攻击者控制的地址。npm团队在收到相关反馈后,已移除部分被篡改的软件包,其中包括周下载量高达3.576亿次的debug包。此次事件再次提醒开发者,即使是广泛使用的工具也可能存在安全风险,需保持警惕并定期检查依赖项的安全性。
据AikidoSecurity技术分析,攻击者在获得维护权限后,对软件包中的index.js文件进行了篡改,植入了浏览器拦截器类的代码,用以劫持网络流量和应用的API接口。 此次事件再次凸显出开源生态中依赖关系的安全隐患。虽然开源软件为开发者提供了便利,但一旦关键组件被恶意篡改,影响范围可能极为广泛。此次攻击手段较为隐蔽,说明攻击者具备较高的技术水平,也反映出当前软件供应链安全防护仍存在较大提升空间。对于开发者和企业而言,加强依赖库的监控与验证机制,显得尤为重要。
该恶意代码会监控并替换以太坊、比特币、Solana、Tron、莱特币和比特币现金等加密货币的收款地址,将交易重定向至攻击者钱包。
研究人员指出,该代码通过劫持fetch、XMLHttpRequest以及钱包接口(如window.ethereum、SolanaAPI等)实现,在用户不知情的情况下修改网页内容、篡改API请求,并操控应用所显示的交易信息。
查询获悉,受影响的 npm 包括:chalk(2.99 亿次 / 周)、ansi-styles(3.71 亿次 / 周)、supports-color(2.87 亿次 / 周)、strip-ansi(2.61 亿次 / 周)、wrap-ansi(1.97 亿次 / 周)、debug(3.576 亿次 / 周)等。
安全专家AndrewMacPherson指出,此次事件并非影响所有用户,只有在特定条件下才会受到影响,例如用户在美国东部时间上午9点至11点半之间全新安装了受影响的包,并生成了新的package-lock.json文件。这一细节表明,攻击或漏洞的触发具有较强的时间和操作条件限制,可能降低了大规模受影响的可能性。对于开发者而言,及时关注官方公告并遵循安全建议,仍是防范风险的关键。
近月来,近年来,黑客频繁对JavaScript库发起攻击。例如,今年7月,eslint-config-prettier包(周下载量达3000万次)曾遭到入侵;今年3月,也有10个npm库遭遇了类似的攻击。