NPM供应链攻击事件
开发者"qix"的NPM账户遭到入侵,黑客借此发布其软件包的恶意版本。攻击者篡改了数十个极受欢迎的JavaScript基础工具包,这些被污染的软件包每周下载量合计超过10亿次,影响范围极为广泛。此次软件供应链攻击专门针对JavaScript/Node.js生态系统。
加密货币剪切器恶意软件
恶意代码实为"加密货币剪切器",通过篡改网络请求中的钱包地址来窃取数字资产。该代码经过高度混淆以避免检测,具有双重攻击路径:当未检测到加密货币钱包扩展时,会替换浏览器的原生fetch和HTTP请求功能;若检测到钱包,则在交易签名前拦截并修改内存中的交易信息。
网络安全研究人员指出,恶意软件采用精密的地址替换算法,使用与合法地址视觉相似的伪造地址,肉眼几乎无法辨别。受影响的软件包包括chalk、strip-ansi等核心依赖项,这些组件被深度嵌套在无数项目的依赖树中。
攻击发现过程
事件曝光颇具偶然性——某构建管道因"fetch未定义"错误而中断,这正是恶意软件试图通过fetch函数外泄数据所致。Ledger首席执行官建议:"硬件钱包用户在签名前务必核对每笔交易;非硬件钱包用户建议暂时停止链上交易。"
广泛存在的攻击载体
尽管恶意载荷专门针对加密货币,但其攻击载体覆盖所有JavaScript运行环境:包括浏览器网页应用、桌面程序、Node.js服务端应用以及JavaScript框架开发的移动应用。普通商业网站可能无意中包含这些受污染包,但仅当用户进行加密货币操作时才会触发恶意行为。
Uniswap和Blockstream已率先声明其系统未受影响。Uniswap官方表示:"经团队确认,我们未使用受影响软件包的漏洞版本,但用户仍需保持警惕。"