百万周下载量 node-ipc 包以反战为名进行供应链投毒
作者:域名 来源:应用开发 浏览: 【大中小】 发布时间:2025-11-05 00:40:38 评论数:
vue-cli 的百万c包依赖项 node-ipc 包正在以反战为名进行供应链投毒,该包在 npm 每周有上百万下载量。周下载量
知名技术网站 V2ex 的反战一条帖子爆出了这个问题,用户 simbaCheng 在使用 npm 构建前端项目时,为名启动项目后桌面自动创建了一个《 WITH-LOVE-FROM-AMERICA.txt 》文件,进行点开之后发现内容是链投空的。

simbaCheng 被吓一跳,百万c包以为自己电脑中毒了。周下载量在网友的反战热心帮助下,发现该 txt 文件是为名 vue-cli 的依赖项 node-ipc 包的作者 RIAEvangelist 在投毒,该作者是进行个反战人士,还特意新建了一个 peacenotwar 仓库来宣传他的链投反战理念。
然而网友继续深扒后,百万c包发现该作者还有更恶毒的周下载量投毒行为。如果说往用户桌面写 txt 文件属于激进的反战反战行为,那么知乎用户 @贺师俊 所介绍的IT技术网 这个 Issue 中的举动则是彻底的恶意攻击:


攻击源码在仓库中仍可找到。源码经过压缩,简单地将一些关键字符串进行了 base64 编码。其行为是利用第三方服务探测用户 IP,针对俄罗斯和白俄罗斯 IP,会尝试覆盖当前目录、父目录和根目录的所有文件,把所有内容替换成 ❤。
但在提交了上面恶意攻击代码后,也许是意识到自己行为的严重性,该作者在半天后把该恶意攻击改成了“较和平”的“反战” TXT 文本,正如本文开头所描述的一般。但无论如何这仍然是一种恶劣的攻击行为,严重破坏了开源生态中的信任,它最坏的亿华云计算后果是带来强代码审核,各大代码托管平台会对代码注释、变量常量命名进行审核。
注意:该作者清晰地知道自己在做什么,以及这些代码意味着什么,他在 issue 里明确指出了下游可以消除影响的变通方法。在该 vue-cli issue 对话 中,RIAEvangelist 更是大方承认自己的恶意代码是针对俄罗斯和白俄罗斯用户

而且,这不是 RIAEvangelist 和他的这个 node-ipc 包第一次引起争议了,早在 2020 年 node-ipc 就因为其奇怪的“dont be a dick”许可证引起了争议,尤雨溪还出面回应:

后续:
vue-cli 发布了新版本,将 node-ipc 的版本锁定到 v9.2.1附受影响项目的解决方式:
按照 readme 正常 install构建结束后,用编辑器全局搜索peacenotwar,将其全部删除然后项目的node_models目录下,将peacenotwar目录删除项目/node_modules/node-ipc/node-ipc.js这个文件中引用peacenotwar的代码注释掉然后正常启动项目即可。源码库