開源社區(qū)的危機(jī):拒絕被“白嫖”?2大著名項(xiàng)目遭作者破壞
以下文章來源于數(shù)據(jù)實(shí)戰(zhàn)派 ,作者林檎
作者 | 林檎
來源 | 數(shù)據(jù)實(shí)戰(zhàn)派
近日,一位開源開發(fā)者的故意破壞,再次引發(fā)了機(jī)構(gòu)依賴開源庫的爭議。這一類開源庫往往由維護(hù)者義務(wù)工作而支撐。
被破壞的開源庫是 Marak Squires 開發(fā)的 color.js 庫和 faker.js 庫。這兩個庫被廣泛使用,其中不乏企業(yè)和商業(yè)客戶。因此,有數(shù)千個大型項(xiàng)目受此影響出現(xiàn)了停止運(yùn)行,包括亞馬遜 AWS 的 CloudDevelopment Kit。
目前 Color.js 現(xiàn)在似乎可以工作了,但 Faker.js 仍然受到影響。用戶需要降級到之前的版本才能再次使用。
Marak 在 color.js 庫的 v1.4.44-liberty-2 版本中給新的美國國旗模塊加入了無限循環(huán),依賴 color.js 的項(xiàng)目會在控制臺看到不停打印的非 ASCII 字符。faker v6.6.6 版本的情況類似,他將這兩個搞破壞的版本推送到 GitHub 和 npm。
數(shù)據(jù)顯示,有近 19000 個項(xiàng)目依賴 color.js 庫;faker 的周下載量超過 280 萬次,有超過 2500 個項(xiàng)目依賴它。
Marak 的破壞行為是引入惡性提交,增加了個新的美國國旗模塊,被破壞的版本導(dǎo)致應(yīng)用程序無限地輸出奇怪的字母和符號,開頭是三行“自由,自由,自由”的文本。另外,faker.js 自述文件也被改成了“Aaron Swartz 到底發(fā)生了什么?” Swartz 是一位杰出的開發(fā)者,他幫助建立了知識共享、RSS 和 Reddit。2011 年,Swartz 被指控從學(xué)術(shù)數(shù)據(jù)庫 JSTOR 竊取文件,后來在 2013 年自殺。Marak 提到 Swartz 可能是指圍繞他的死亡的陰謀論。
reddit 上的熱門帖子表示,Marak 破壞庫代碼是因?yàn)槿狈Y金和被濫用開源項(xiàng)目。
事實(shí)上,在此次事件之前,這位開發(fā)者就曾公開批評,指責(zé)使用了這些庫的企業(yè)對社區(qū)沒有任何回饋。2020 年 11 月,他曾警告說,自己將不再義務(wù)工作支持大企業(yè):“恕我直言,我不會再免費(fèi)工作來支持《財(cái)富》500 強(qiáng)(Fortune 500)公司(以及其他規(guī)模較小的公司)了。趁這個機(jī)會,你可以發(fā)給我一份年薪六位數(shù)的合同,或者把這個項(xiàng)目分掉,讓別人來做”。
在將這一錯誤更新推送到 fake .js 的兩天后,Marak 發(fā)布了一條推文,指出他的賬號已被 GitHub 暫停使用,盡管他為該網(wǎng)站上貢獻(xiàn)了大量項(xiàng)目。
“NPM 已經(jīng)恢復(fù)到以前版本的 fake .js 包,Github 已經(jīng)暫停了我對所有公共和私人項(xiàng)目的訪問。我有上百個項(xiàng)目。”推文中如此說道。
有安全專家批評 Marak 這種行為不負(fù)責(zé)任。GitHub 平臺暫時封禁了 Marak Squires 的賬號(已解封),此舉也引發(fā)了對 GitHub 如何更好地管理開源項(xiàng)目的爭議。
Marak 的大膽舉動引起了人們對開源開發(fā)的道德和經(jīng)濟(jì)沖突的關(guān)注,這可能也是他這次行動的目標(biāo)。
隨著互聯(lián)網(wǎng)行業(yè)的高速發(fā)展,大量網(wǎng)站、軟件和應(yīng)用程序依賴開源開發(fā)人員的工作來創(chuàng)建基本工具和組件。比如,按照使用的性質(zhì)不同,軟件就可以大概分為商業(yè)軟件、試用軟件、公有軟件、開源軟件。數(shù)據(jù)顯示,不管是手機(jī),還是電腦,平均每個程序都要依賴 150 個開源組件。
在開源這種模式下,所有服務(wù)都是免費(fèi)的。這也意味著開發(fā)人員得不知疲倦地修復(fù)其開源軟件中的安全問題。例如 2014 年影響 OpenSSL 的 Heartbleed恐慌以及最近在 log4j 中發(fā)現(xiàn)的涉及大量修復(fù)工作的 Log4Shell 漏洞??墒?,當(dāng)越來越多的開源軟件和平臺被融入到商業(yè)機(jī)構(gòu)的服務(wù)體系中,不少公司以此獲利頗豐卻不支付費(fèi)用,也不對開源社區(qū)做出相應(yīng)的回饋,矛盾便日益凸顯甚至激化了。
以此次的事件為案例,許多人曾認(rèn)為“開源軟件可以永久免費(fèi)使用”、“開源軟件使用無任何義務(wù)”等,這些固有的認(rèn)知必須有所改變了。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。