一、事件简述
1月5日,有开发者在 twitter 中发文称遭遇了名为 chalk-next 的组件投毒事件,该组件存在收集配置信息和删除本地文件的恶意逻辑,当前 NPM 仓库已经下线了该组件。
chalk-next 组件的开发者也是 vue-admin-beautiful 项目的作者 chuzhixin,vue-admin-beautiful 项目在 GitHub 中拥有 13.5K 的 star 数。
经过分析,包括 chalk-next 在内,作者发布的 chokider-next、vue-plugin-rely 包中的类似逻辑被用于识别、惩罚盗版行为,此事件也在 V2EX 等开发者社区中引起较多讨论。
二、事件过程
1月5日,@ewind1994 在 twitter 中发推文称发现了一个 PR(代码合并请求)试图针对他们 GitHub 项目投毒,该PR是将原有的chalk
依赖修改为chalk-next
,而chalk-next
通过判断运行环境中的配置信息,在一定条件下会删除当前目录下的特定目录文件(包括.vscode、src、public、.git、.svn、mock、node_modules)。
当天 19:05,在用户投诉后,NPM 官方仓库删除了 chalk-next 包,目前已无法下载。
当天 19:11,在 V2EX 社区中有其他开发者发帖(https://v2ex.com/t/906834)描述了该事件相关信息
1 月 6 日 9:39,@chu1204505056 在推特中回应@ewind1994
1月6日 10:32,开发者 chuzhixin 在 GitHub 仓库(https://github.com/chuzhixin/chalk-next)中挂出一段说明,声称@ewind1994 一直在对其恶意攻击。
1月6日 11:27,开发者 chuzhixin 在AFFiNE项目中提出 issue(https://github.com/toeverything/AFFiNE/issues/676)质疑此前出现PR的原因。