开源社区的危机:拒绝被“白嫖”?2大著名项目遭作者破坏

news/2024/7/7 19:48:44

作者 | 林檎

来源 | 数据实战派

8fe6b8a409cdaa7efbcc7fa42b1bddbe.png

近日,一位开源开发者的故意破坏,再次引发了机构依赖开源库的争议。这一类开源库往往由维护者义务工作而支撑。

被破坏的开源库是 Marak Squires 开发的 color.js 库和 faker.js 库。这两个库被广泛使用,其中不乏企业和商业客户。因此,有数千个大型项目受此影响出现了停止运行,包括亚马逊 AWS 的 CloudDevelopment Kit。

目前 Color.js 现在似乎可以工作了,但 Faker.js 仍然受到影响。用户需要降级到之前的版本才能再次使用。

Marak 在 color.js 库的 v1.4.44-liberty-2 版本中给新的美国国旗模块加入了无限循环,依赖 color.js 的项目会在控制台看到不停打印的非 ASCII 字符。faker v6.6.6 版本的情况类似,他将这两个搞破坏的版本推送到 GitHub 和 npm。

数据显示,有近 19000 个项目依赖 color.js 库;faker 的周下载量超过 280 万次,有超过 2500 个项目依赖它。

Marak 的破坏行为是引入恶性提交,增加了个新的美国国旗模块,被破坏的版本导致应用程序无限地输出奇怪的字母和符号,开头是三行“自由,自由,自由”的文本。另外,faker.js 自述文件也被改成了“Aaron Swartz 到底发生了什么?” Swartz 是一位杰出的开发者,他帮助建立了知识共享、RSS 和 Reddit。2011 年,Swartz 被指控从学术数据库 JSTOR 窃取文件,后来在 2013 年自杀。Marak 提到 Swartz 可能是指围绕他的死亡的阴谋论。

reddit 上的热门帖子表示,Marak 破坏库代码是因为缺乏资金和被滥用开源项目。

事实上,在此次事件之前,这位开发者就曾公开批评,指责使用了这些库的企业对社区没有任何回馈。2020 年 11 月,他曾警告说,自己将不再义务工作支持大企业:“恕我直言,我不会再免费工作来支持《财富》500 强(Fortune 500)公司(以及其他规模较小的公司)了。趁这个机会,你可以发给我一份年薪六位数的合同,或者把这个项目分掉,让别人来做”。

在将这一错误更新推送到 fake .js 的两天后,Marak 发布了一条推文,指出他的账号已被 GitHub 暂停使用,尽管他为该网站上贡献了大量项目。

acd52e8a87243e034a4e939cbbda766e.png

“NPM 已经恢复到以前版本的 fake .js 包,Github 已经暂停了我对所有公共和私人项目的访问。我有上百个项目。”推文中如此说道。

有安全专家批评 Marak 这种行为不负责任。GitHub 平台暂时封禁了 Marak Squires 的账号(已解封),此举也引发了对 GitHub 如何更好地管理开源项目的争议。

Marak 的大胆举动引起了人们对开源开发的道德和经济冲突的关注,这可能也是他这次行动的目标。

随着互联网行业的高速发展,大量网站、软件和应用程序依赖开源开发人员的工作来创建基本工具和组件。比如,按照使用的性质不同,软件就可以大概分为商业软件、试用软件、公有软件、开源软件。数据显示,不管是手机,还是电脑,平均每个程序都要依赖 150 个开源组件。

在开源这种模式下,所有服务都是免费的。这也意味着开发人员得不知疲倦地修复其开源软件中的安全问题。例如 2014 年影响 OpenSSL 的 Heartbleed恐慌以及最近在 log4j 中发现的涉及大量修复工作的 Log4Shell 漏洞。可是,当越来越多的开源软件和平台被融入到商业机构的服务体系中,不少公司以此获利颇丰却不支付费用,也不对开源社区做出相应的回馈,矛盾便日益凸显甚至激化了。

以此次的事件为案例,许多人曾认为“开源软件可以永久免费使用”、“开源软件使用无任何义务”等,这些固有的认知必须有所改变了。

863612341ba847ac1c28e1fc9db44403.gif

技术

用技术实现时序羽毛球动作预测

资讯

AI在嘈杂环境中看唇语识别理解

技术

50行python代码制作数据大屏

资讯

这个AI模型火上GitHub热榜

d9f7ffcd14fb1d449cf24a67d6efb43a.png

分享

64023e636f8f6742994ba731b09f1aa2.png

点收藏

5d66c554be730f0684a30b9fe0b5cf3b.png

点点赞

7e55c56c492d755626804d6b7355b6ce.png

点在看


http://lihuaxi.xjx100.cn/news/256338.html

相关文章

互联网协议详解

本文转载自:https://www.cnblogs.com/111testing/p/6942585.html 目录:::::: 一、网络协议 二、TCP(Transmission Control Protocol,传输控制协议) TCP头格式…

采样提速256倍,蒸馏扩散模型生成图像质量媲美教师模型,只需4步

点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达作者丨杜伟、陈萍来源丨机器之心编辑丨极市平台导读 斯坦福大学联合谷歌大脑使用「两步蒸馏方法」提升无分类器指导的采样效率,在生成样本质量和采样速度上都有非…

什么才是真正的架构设计

欢迎关注方志朋的博客,回复”666“获面试宝典什么是架构和架构本质在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架…

CCF推荐系统项目代码解读!

Datawhale干货 作者:阿水,北京航空航天大学,Datawhale成员本文以CCF大数据与计算智能大赛(CCF BDCI)图书推荐系统竞赛为实践背景,使用Paddle构建用户与图书的打分模型,借助Embedding层来完成具体…

转《两个个很形象的依赖注入的比喻》

何谓控制反转(IoC Inversion of Control),何谓依赖注入(DI Dependency Injection)?一直都半懂不懂,今天看到两个比喻,觉得比较形象。 IoC,用白话来讲,就是…

股市币市:数据分析与交易所公告(20190225)

沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源: https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源: htt…

他,1年9个月获清华博士学位,一作身份发27篇SCI,组队击败NASA打破“航天奥林匹克”欧美垄断...

点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达Pine 梦晨 发自 凹非寺量子位 | 公众号 QbitAI1年9个月拿到清华博士学位,一作发表SCI论文27篇,曾在国际大赛击败NASA……航天学霸姜宇的故事&#xf…

SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例

原文:SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例sql server 安装第一个实例,默认实例的端口是1433, 一个库中如果有多个实例,从第二个实例开始的端口是动态端口,需要的话,自己手工指…