page contents

狠人!标星 3.4 万的项目说删就删,几行代码搞崩数万个开源项目

狠人!标星 3.4 万的项目说删就删,几行代码搞崩数万个开源项目

attachments-2022-01-6HWHdrzS61df7c9f71f9c.png

开源是非多,卤蛋有话说。

大家好我是 HelloGitHub 的卤蛋,最近有个 「流行开源项目的作者删掉项目、提交恶意代码」 的事情,引起了广大开源爱好者的讨论。

我深知维护开源项目的不易,所以比较好奇他为什么舍得删掉项目。

这不眼瞅着就要过年了吗?无心工作的我就“顺藤摸瓜”把这个事儿理了个大概,感兴趣的小伙伴可以一起来看看这件事情的来龙去脉。

背景

首先要介绍下这次事情中两个站在“风口浪尖”的 Node.js 开源项目:

1、faker.js

用于生成大量的假数据 Node.js 库。可用于测试中自动创建丰富、合理、多样的测试数据,包括姓名、日期、头像、地址等。因为项目已经被作者删除,我找到了之前项目首页的镜像,该项目创建于 7 年前、共有 3.4 万星、266 位贡献者。

2、colors.js

用于在 Node.js 控制台中显示彩色文本的库,创建于 7 年前共有 4.5 千星、44 位贡献者。

虽然它们提供的功能的比较单一,但在解决某些场景下的问题很方便,而且开源协议宽松(MIT),所以受众很广。在统计它们受欢迎程度之前,我想先简单介绍下这种开源工具库,发布到包管理平台和使用的流程。

attachments-2022-01-kKaZ8aRF61df7bf6e0cca.png

一般情况下我们是通过 NPM(包管理器)使用它们,所以我找来了 NPM 的数据:

attachments-2022-01-RAVOqdEQ61df7c18d0111.png

说实话我看到数据后惊呆了!「faker.js」和「colors.js」看似不起眼,但从数据上来看全球有近千万的开发者在使用,加起来每天大约有 几百万的下载量,共计 2 万个项目依赖它们!

如此流行的项目,作者是一位 GitHub 上叫做「Marak」的用户:

Marak 大神为什么要删自己维护了多年的开源项目,而且删完了不过瘾还在往千万人在用的项目中加入了恶意代码?

经过

事情还要从 2020 年 11 月 Marak 发的一条 issues 说起:

内容大致的意思就是吐槽:大公司免费用我的开源项目,没有人为我的付出买单,我不想干了!

我这里用的是“吐槽“是因为项目是一年后才删的。所以我推断当时他并不是真的想删,但萌生了“不想再为大公司免费维护开源项目”的想法,想通过维护开源项目有一份收入。此后 Marak 就开始了开源项目商业化的尝试,但情况并未好转。

时隔半年,时间来到了 2021 年 4 月 Marak 在自己的博客,发布了一篇名为《Monetizing Open-source is problematic》的文章,讲述了这段时间 Faker.js 在商业化路上的尝试和坎坷。

文中写道:

  • 还是没有公司为 Faker 买单,只有零星的个人开发者赞助
  • 期间他开发了基于 Faker 的付费云服务,但并不赚钱
  • 一个初创公司抄袭了他的服务,并提供了类似的免费服务
  • Marak 与该公司 CEO 沟通后无果而终

上面这一堆事情重燃了他删掉项目的决心,于是 Marak 在 2022 年 1 月 5 删掉了 Faker.js 项目的源码。

事情并没有因为删掉项目而结束,反而发生了更大的事情。随后他就在 1 月 7 号 收到了 GitHub 的封号通知。

虽然没过多久 GitHub 就解封了,但这些事情(不赚钱、被抄袭、被封号)加起来彻底激怒了 Marak,他开始用自己的方式反击和为自由发声。

第二天也就是 2022 年 1 月 8 日,他就在自己受众更广的 colors.js 项目中注入了死循环的恶意代码,同时输出乱码并命名为 v1.4.44-liberty-2 版本,然后发布到了 NPM 平台。

后面就有了,大家见到的众多 Node.js 库崩溃、乱码等现象。

attachments-2022-01-3nu5Ry3t61df7c52e8f3f.png

目前 NPM 方面和 colors.js 另外一位维护者已经修复了这个问题,但项目作者 Marak 并没有出面解决和解释这么做的原因。

以上就是这件事情到目前为止的始末,网上对这件事的评价分为三派:

  • (支持)他自己的代码,他说了算。
  • (中立)同情。
  • (反对)有事儿说,别瞎搞。置他人于不顾、没有责任感、不道德。

 更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-06-evuu2Y9962a1c1a872d98.jpeg


  • 发表于 2022-01-13 09:13
  • 阅读 ( 355 )
  • 分类:行业资讯

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1482 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章