新智元报道反复旋转自己的ip和乱码


新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

新智元报道
【导读】程序突然乱码 , 开发者紧急「修复」!然而……
这两天 , 一些开发者感觉有点懵……

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

一觉醒来发现 , 自己程序跑出来的全都是「乱码」 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

说起来 , 这些开发者的共同点就是都使用了开源库「colors」和「faker」 。
而且这两个库相当受欢迎!
仅仅在npm上 , colors库每周的下载量就超过2000万次 , 并且有将近19000个项目正在使用 。
faker在npm上每周的下载量超过280万次 , 有超过2500个项目使用 。
甚至连亚马逊的云计算开发工具包(aws-cdk)也用上了 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

最初 , 用户怀疑这些项目所使用的库「colors」和「faker」被入侵 , 类似于去年coa、rc和ua-parser-js库被恶意分子劫持的情况 。
看到各种反馈之后 , 开发者也赶紧发文表示已经在努力「修复」了 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

但事实证明 , 故事并没有这么简单 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

老子 , 不干了!
事件的开端要从这位名为「MarakSquires」的开发者说起 。
近期 , Marak在「colors」(GitHub上又名colors.js)加入了v1.4.44-liberty-2 , 并且发布了「faker」(GitHub上又名faker.js)的6.6.6版本 。
稍微对西方有所了解的朋友们很容易就能注意到 , 这个「666」有些不太对劲啊 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

找了一圈发现 , 网上的图都不太能放……
总之 , 就是和「恶魔」有着千丝万缕的联系 。
而Marak所做的 , 正是引入了一个无限循环的bug , 让数以千计的依赖「color」和「faker」的项目直接崩溃 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

这些信息包括文本「LIBERTYLIBERTYLIBERTY」 , 以及在后面跟着的一大串非ASCII字符 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

这些字符也被称为「Zalgo文本」 。
当然 , 这又是另一个非常有意思的故事了 , 感兴趣的朋友可以自己搜一下 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

然而 , 时间一分一秒地过去了 , 自己的程序跑不了 , 项目的开发者也迟迟没有提交解决方案 。
开发者们不得不开始自己寻求解决方案 。

新智元报道反复旋转自己的ip和乱码
文章图片

文章图片

很快就有人发现 , 只要回滚到之前的1.4.0版本 , 问题就解决了 。

新智元报道反复旋转自己的ip和乱码