遭作者破坏的Faker组件现由8名社群成员出面维护

在之前遭到作者自己破坏的NPM(Node Package Manager)热门组件Faker,现在有8名工程师合力,在GitHub上创建了一个官方Faker项目,并且恢复了过去的Faker版本,同时制定了接下来的开发计划。

Faker函数库能够创建虚假资料,用于应用程序测试、开发使用。新维护者提到,在事件平息之前,他们会先使用官方的名号,并强调,这是一个由社群维护的项目。

安全公司Snyk先前发现NPM线上组件库上两个热门组件colors和Faker,遭到恶意破坏,最后发现凶手原来是开发者本人Marak Squires。由于他不满大部分财富500大企业使用他的项目,但是却不愿支付费用,花费许多心力的开发团队,都只获得开源社群和GitHub赞助商支持,因此决定搞破坏。

Marak Squires在1月8日的时候发布新版colors,并在里面加入了无限循环程序代码,这些程序代码会在组件程序代码初始化后立即触发执行,并对任何Node.js

服务器产生DoS攻击。类似的情况发生在Faker组件上,在1月5日Faker位于GitHub的开源存储库,收到了一个强制提交,接着Faker的NPM组件版本便被升级成6.6.6版本,这个不包含任何程序代码的空组件,被发布到了公共注册表上,Marak Squires随后发布不再免费维护组件的贴文,并且删除存储库。

现在出现8名工程师,替Faker组件创建了一个新的GitHub存储库,并且发布了所有之前的Faker版本,同时也创建了推特账号和文件网站,来与社群交互。新维护者提到,他们想让Faker组件有一个新开始,甚至可以比以前的更酷。因此还制定了开发路线计划,包括要支持ESM、与现有Faker生态系统维护者交互,甚至要在文件加入交互式环境,以及支持Node 18。

由于在Marak Squires删除自己的版本后,有许多分叉和私人维护的Faker版本出现,目前这个由8名社群成员维护的版本,自称为官方版本,新维护者解释,这是避免用户将这个社群维护的版本,与其他私人版本混淆,他们会在事件平息之后,拿掉官方的字样,他们也提到,目前看来,这个由社群维护的版本是最稳定的Faker版本。

由于Faker项目的捐款是由Open Source Collective托管,新维护者与该组织完成共识,原本的Faker项目维护者Marak Squires等人,可以保有原本账户中的1万多美元捐款,待资金转移后,新项目会获得该项目后续的捐款,作为维护项目的费用。