他推送了触发无限循环的损坏更新

打开网易新闻 查看精彩图片

一名开发人员似乎故意破坏了 GitHub 和软件注册表 npm 上的一对开源库——“ faker.js ”和“ colors.js ”——成千上万的用户依赖这些库,使得包含这些库的任何项目都无用,因为由Bleeping Computer报道。虽然 color.js 看起来已经更新到工作版本,但 faker.js 似乎仍然受到影响,但可以通过降级到以前的版本(5.5.3)来解决这个问题。

被破坏的版本导致应用程序无限输出奇怪的字母和符号

Bleeping Computer发现,这两个库的开发者 Marak Squires 向 colors.js 引入了恶意提交(GitHub 上的文件修订),添加了“新的美国国旗模块”,并推出了faker 6.6.6 版.js,触发了同样的破坏性事件。被破坏的版本导致应用程序无限输出奇怪的字母和符号,从三行文本开始,上面写着“LIBERTY LIBERTY LIBERTY”。

更奇怪的是,faker.js 自述文件也被更改为“Aaron Swartz 到底发生了什么?” Swartz 是一位杰出的开发人员,他帮助建立了Creative Commons、RSS 和 Reddit。2011 年,Swartz 被指控从学术数据库 JSTOR 中窃取文件,目的是让它们免费访问,后来在 2013 年自杀。Squires 提到 Swartz 可能指的是围绕他死亡的阴谋论。

正如指出的长时间再次计算机,一个号码 的 用户-包括一些工作与亚马逊的云开发工具包-转向GitHub的bug跟踪系统,以表达他们对这一问题的担忧。由于faker.js在 npm 上的每周下载量接近 250 万,而color.js每周的下载量约为 2240 万,因此腐败的影响可能是深远的。对于上下文,faker.js 为演示生成假数据,color.js 将颜色添加到 javascript 控制台。

为了解决这个问题,Squires在 GitHub 上发布了更新以解决“zalgo 问题”,该问题是指损坏文件产生的故障文本。“我们注意到在 v1.4.44-liberty-2 版本的颜色中有一个 zalgo 错误,”Squires 以一种可能是讽刺的方式写道。“请知道我们现在正在努力解决这个问题,很快就会有解决方案。”

在将损坏的更新推送到 faker.js 两天后,Squires 后来发了一条推文,指出他已被 GitHub 暂停,尽管在该网站上存储了数百个项目。然而,从 faker.js 和 colors.js 的更新日志来看,他的停职似乎已经解除。Squires 在 1 月 4 日引入了 faker.js 提交,在 1 月 6 日被禁止,直到 1 月 7 日才引入了 colors.js 的“自由”版本。目前尚不清楚 Squires 的帐户是否再次被禁止。The Verge 联系了 GitHub,要求发表评论,但没有立即收到回复。