<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 開(kāi)源社區的危機:拒絕被“白嫖”?2大著(zhù)名項目遭作者破壞

開(kāi)源社區的危機:拒絕被“白嫖”?2大著(zhù)名項目遭作者破壞

發(fā)布人:AI科技大本營(yíng) 時(shí)間:2022-01-16 來(lái)源:工程師 發(fā)布文章

以下文章來(lái)源于數據實(shí)戰派 ,作者林檎

作者 | 林檎

來(lái)源 | 數據實(shí)戰派

微信圖片_20220116180351.jpg

近日,一位開(kāi)源開(kāi)發(fā)者的故意破壞,再次引發(fā)了機構依賴(lài)開(kāi)源庫的爭議。這一類(lèi)開(kāi)源庫往往由維護者義務(wù)工作而支撐。

被破壞的開(kāi)源庫是 Marak Squires 開(kāi)發(fā)的 color.js 庫和 faker.js 庫。這兩個(gè)庫被廣泛使用,其中不乏企業(yè)和商業(yè)客戶(hù)。因此,有數千個(gè)大型項目受此影響出現了停止運行,包括亞馬遜 AWS 的 CloudDevelopment Kit。

目前 Color.js 現在似乎可以工作了,但 Faker.js 仍然受到影響。用戶(hù)需要降級到之前的版本才能再次使用。

Marak 在 color.js 庫的 v1.4.44-liberty-2 版本中給新的美國國旗模塊加入了無(wú)限循環(huán),依賴(lài) color.js 的項目會(huì )在控制臺看到不停打印的非 ASCII 字符。faker v6.6.6 版本的情況類(lèi)似,他將這兩個(gè)搞破壞的版本推送到 GitHub 和 npm。

數據顯示,有近 19000 個(gè)項目依賴(lài) color.js 庫;faker 的周下載量超過(guò) 280 萬(wàn)次,有超過(guò) 2500 個(gè)項目依賴(lài)它。

Marak 的破壞行為是引入惡性提交,增加了個(gè)新的美國國旗模塊,被破壞的版本導致應用程序無(wú)限地輸出奇怪的字母和符號,開(kāi)頭是三行“自由,自由,自由”的文本。另外,faker.js 自述文件也被改成了“Aaron Swartz 到底發(fā)生了什么?” Swartz 是一位杰出的開(kāi)發(fā)者,他幫助建立了知識共享、RSS 和 Reddit。2011 年,Swartz 被指控從學(xué)術(shù)數據庫 JSTOR 竊取文件,后來(lái)在 2013 年自殺。Marak 提到 Swartz 可能是指圍繞他的死亡的陰謀論。

reddit 上的熱門(mén)帖子表示,Marak 破壞庫代碼是因為缺乏資金和被濫用開(kāi)源項目。

事實(shí)上,在此次事件之前,這位開(kāi)發(fā)者就曾公開(kāi)批評,指責使用了這些庫的企業(yè)對社區沒(méi)有任何回饋。2020 年 11 月,他曾警告說(shuō),自己將不再義務(wù)工作支持大企業(yè):“恕我直言,我不會(huì )再免費工作來(lái)支持《財富》500 強(Fortune 500)公司(以及其他規模較小的公司)了。趁這個(gè)機會(huì ),你可以發(fā)給我一份年薪六位數的合同,或者把這個(gè)項目分掉,讓別人來(lái)做”。

在將這一錯誤更新推送到 fake .js 的兩天后,Marak 發(fā)布了一條推文,指出他的賬號已被 GitHub 暫停使用,盡管他為該網(wǎng)站上貢獻了大量項目。

微信圖片_20220116180355.jpg

“NPM 已經(jīng)恢復到以前版本的 fake .js 包,Github 已經(jīng)暫停了我對所有公共和私人項目的訪(fǎng)問(wèn)。我有上百個(gè)項目?!蓖莆闹腥绱苏f(shuō)道。

有安全專(zhuān)家批評 Marak 這種行為不負責任。GitHub 平臺暫時(shí)封禁了 Marak Squires 的賬號(已解封),此舉也引發(fā)了對 GitHub 如何更好地管理開(kāi)源項目的爭議。

Marak 的大膽舉動(dòng)引起了人們對開(kāi)源開(kāi)發(fā)的道德和經(jīng)濟沖突的關(guān)注,這可能也是他這次行動(dòng)的目標。

隨著(zhù)互聯(lián)網(wǎng)行業(yè)的高速發(fā)展,大量網(wǎng)站、軟件和應用程序依賴(lài)開(kāi)源開(kāi)發(fā)人員的工作來(lái)創(chuàng )建基本工具和組件。比如,按照使用的性質(zhì)不同,軟件就可以大概分為商業(yè)軟件、試用軟件、公有軟件、開(kāi)源軟件。數據顯示,不管是手機,還是電腦,平均每個(gè)程序都要依賴(lài) 150 個(gè)開(kāi)源組件。

在開(kāi)源這種模式下,所有服務(wù)都是免費的。這也意味著(zhù)開(kāi)發(fā)人員得不知疲倦地修復其開(kāi)源軟件中的安全問(wèn)題。例如 2014 年影響 OpenSSL 的 Heartbleed恐慌以及最近在 log4j 中發(fā)現的涉及大量修復工作的 Log4Shell 漏洞??墒?,當越來(lái)越多的開(kāi)源軟件和平臺被融入到商業(yè)機構的服務(wù)體系中,不少公司以此獲利頗豐卻不支付費用,也不對開(kāi)源社區做出相應的回饋,矛盾便日益凸顯甚至激化了。

以此次的事件為案例,許多人曾認為“開(kāi)源軟件可以永久免費使用”、“開(kāi)源軟件使用無(wú)任何義務(wù)”等,這些固有的認知必須有所改變了。

*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>