npm平台遭供应链投毒攻击,开发者需警惕敏感信息泄露风险
2026-05-25 15:10:47未知 作者:徽声在线
根据国家网络安全通报中心的最新监测报告,全球范围内广泛使用的JavaScript软件包管理平台npm遭遇了名为“沙虫”(Shai-Hulud)的供应链投毒攻击事件。此次攻击中,不法分子成功入侵了npm官方维护者的账户,并迅速在平台上投放了大量恶意软件包。据统计,共有超过300个独立程序包被植入恶意代码,涉及600余个恶意版本,对多个知名开源项目构成了严重威胁。一旦开发者安装了这些恶意依赖包,程序便会在本地主机或CI/CD流水线环境中自动执行恶意代码,进而窃取包括GitHub Token、npm Token、云服务密钥、SSH私钥、Kubernetes凭据以及数据库连接字符串等在内的敏感信息。
此次投毒攻击不仅具有极强的隐蔽性,还展现出了蠕虫式的自我复制与横向传播能力。攻击者能够利用窃取的npm发布权限,对开发者名下的其他软件包进行篡改和二次发布,从而导致供应链风险不断扩散,危害程度持续升级。
一、受影响范围详解
此次攻击波及的项目范围广泛,主要包括但不限于echarts-for-react、@antv系列核心库(如@antv/g2、@antv/g6、@antv/x6等)、TanStack系列的42个包、Mistral AI相关的PyPI包以及timeago.js等社区包。受影响的主要群体包括前端开发者、人工智能或机器学习领域的开发者、开源项目维护者以及企业研发人员等。由于恶意软件具备蠕虫式传播特性,它能够自动重新发布受害者所维护的其他包,因此,共享开发环境的其他用户以及依赖同一维护者发布的其他软件包的用户,也可能面临间接感染的风险。
二、应对措施与建议
针对此次攻击,我们提出以下处置建议:首先,应立即隔离风险设备。若本地设备近期安装过相关受影响的npm依赖,建议暂停项目运行,并迅速断开可疑设备的网络连接,以防止恶意代码继续外联。其次,要全面排查依赖文件。仔细检查package.json、package-lock.json、pnpm-lock.yaml、yarn.lock以及node_modules目录,核实是否存在异常的preinstall、postinstall等自动执行脚本。再者,需清理残留痕迹。排查Claude Code hooks、VS Code任务配置等位置,检查是否存在router_runtime.js、setup.mjs等可疑文件,确保恶意代码在卸载依赖后不会继续残留。此外,还应及时更换敏感凭证。更新GitHub Token、npm Token、云服务密钥、SSH私钥、数据库密码等各类密钥与令牌,并对关联账号执行“退出全部设备”操作,以增强账户安全性。最后,要提升安全意识。在安装npm第三方依赖前,务必核验项目官方来源、近期发布记录和脚本内容,避免盲目安装热门包,优先选用安全稳定的官方版本。
