npm包被毀,GitHub強(qiáng)烈譴責(zé)!開源作者因反俄給代碼投毒遭抨擊
開發(fā)者自毀代碼,只為不讓俄羅斯人使用。
據(jù)Github上發(fā)布的一份公告稱,一位流行的開源軟件的技術(shù)專家和維護(hù)者故意破壞了他們自己的代碼。
他們向非常受歡迎的node-ipc庫(kù)中添加了惡意代碼,用「心臟」表情符號(hào)替換了文件。
并將遭到破壞的npm程序庫(kù)版本稱為「新軟件」,并非「惡意軟件」。
這么做的目的就是為了譴責(zé)俄羅斯入侵烏克蘭,但是這還會(huì)影響使用該代碼的其他開發(fā)者,因此遭到了GitHub社區(qū)強(qiáng)烈反對(duì)。
開發(fā)者投毒「社死」
首先簡(jiǎn)單介紹下node-ipc庫(kù)。
node-ipc 是用于本地和遠(yuǎn)程間通信的 nodejs 模塊,支持Linux、Mac 和 Windows 系統(tǒng)。它還支持底層unix和UDP的windows 套接字,并保護(hù)TLS 和TCP 套接字的安全。
它是解決Node.js 中復(fù)雜多進(jìn)程 Neutral Networking 的很好的解決方案。截止 9.2.2版本,該模塊使用peacenotwar模塊。
開發(fā)者自毀代碼這件事適于3月8日。
當(dāng)時(shí)npm的維護(hù)者 Brandon Nozaki Miller (又名 RIAEvangelist) 編寫了源代碼,并發(fā)布了名為peacenotwar和oneday-test兩個(gè)模塊。
部分惡意代碼
peacenotwar被RIAEvangelist稱作「抗議軟件」,并作為依賴項(xiàng)而包含在node-ipc的代碼中。
這意味著node-ipc的某些版本,可能與peacenotwar捆綁到一起。
帶有多語種和平信息的 WITH-LOVE-FROM-AMERICA.txt 文件
RIAEvangelist 在代碼描述中寫道,
這段代碼是非破壞性的例子,說明了控制你的節(jié)點(diǎn)模塊的重要性。同時(shí)它也可以作為一種非暴力的抗議形式,以反對(duì)當(dāng)前俄烏沖突造成的威脅。不過出于禮貌,只有在不存在時(shí),該模塊才會(huì)在你的用戶桌面上添加一條呼吁和平的信息。
此外,RIAEvangelist鼓勵(lì)更多人在項(xiàng)目中添加參與數(shù)字抗議的代碼,并在 peacenotwar 的 GitHub 頁面上,貼上了 YouTube 視頻鏈接、以及來自音樂藝術(shù)家 Mattisyahu 的和平歌曲《One Day》的歌詞。
安全公司 Snyk 的研究員Liran Tal一直追蹤這些變化并在周三發(fā)布了調(diào)查結(jié)果。
Tal表示,RIAEvangelist在npm上維護(hù)了超過40個(gè)包。任何系統(tǒng)只要與俄羅斯或白俄羅斯的地理位置相匹配,就會(huì)發(fā)生非常明顯的濫用和關(guān)鍵的供應(yīng)鏈安全事件,這些 npm 包將被直接調(diào)用。
RIAEvangelist這一行為也在推特和GitHub社區(qū)上遭到抨擊,簡(jiǎn)直就是大型社死現(xiàn)場(chǎng)。
「這就像特斯拉故意輸入代碼來檢測(cè)某些司機(jī)?!?/p>
「如果被刪除的文件實(shí)際上是重要內(nèi)容,其他人怎么辦?」
還有人表示,「有人用行動(dòng)表明開源是有國(guó)界的。供應(yīng)鏈污染并非良策?!?/p>
一位俄羅斯人出來表示,這不會(huì)阻止戰(zhàn)爭(zhēng),只會(huì)損傷其他人的利益。
RISC-V成唯一選擇
Arm在此前也宣稱將不再給俄羅斯提供相關(guān)服務(wù)。雖然Arm自己不生產(chǎn)處理器,但博通、高通等芯片公司卻需要Arm的產(chǎn)品。
所以,一旦Arm停止在俄的服務(wù),相關(guān)服務(wù)商將會(huì)面臨困境。
但俄羅斯并不是一點(diǎn)辦法都沒有。
俄羅斯搜索引擎公司Yandex在本月初的投資者大會(huì)上曾表示,「我們相信,俄羅斯現(xiàn)有的數(shù)據(jù)中心容量和其他相關(guān)的技術(shù)將使俄羅斯能夠在至少未來12到18個(gè)月內(nèi)繼續(xù)正常運(yùn)營(yíng)?!?/p>
但是,另一份聲明則表示,「如果俄羅斯的業(yè)務(wù)或產(chǎn)品中使用的硬件、軟件或其他技術(shù)的供應(yīng)長(zhǎng)期暫停,如果我們無法獲得替代來源,未來我們的運(yùn)營(yíng)可能會(huì)受到重大不利影響?!?/p>
眼下,x86和Arm都停止供應(yīng),只剩下RISC-V是俄羅斯僅有的選擇。
RISC-V是一個(gè)基于精簡(jiǎn)指令集(RISC)原則的開源指令集架構(gòu)(ISA)。
與大多數(shù)指令集相比,RISC-V指令集可以自由地用于任何目的。它允許任何人設(shè)計(jì)、制造和銷售RISC-V芯片和軟件。
雖然這不是第一個(gè)開源指令集,但它具有重要意義。設(shè)計(jì)者考慮到了這些用途中的性能與功率效率。該指令集還具有眾多支持的軟件,這解決了新指令集通常的弱點(diǎn)。
RISC-V指令集的設(shè)計(jì)考慮了小型、快速、低功耗的現(xiàn)實(shí)情況來操作,但并沒有對(duì)特定的微架構(gòu)做過多的設(shè)計(jì)。
和主流的x86和Arm芯片相比,目前的RISC-V尚未建立起完整的生態(tài),在高性能領(lǐng)域還未取得突出的成績(jī)。
有專家表示,RISC-V 和 Arm 打成平手,可能還需要數(shù)年時(shí)間。
而在2021年,俄羅斯從事技術(shù)投資的企業(yè)集團(tuán)Rostec已與服務(wù)器公司Yadro和硅設(shè)計(jì)公司 Syntacore達(dá)成協(xié)議,將為計(jì)算機(jī)、筆記本電腦和筆記本電腦開發(fā)RISC-V處理器。
報(bào)告中表明,Syntacore將開發(fā)出足夠強(qiáng)大的RISC-V芯片,到2025年能為政府和教育系統(tǒng)提供足夠動(dòng)力。
據(jù)報(bào)道稱,該項(xiàng)目的成本約為300億盧布(約4億美元),該項(xiàng)目的領(lǐng)導(dǎo)者計(jì)劃銷售60,000個(gè)以RISC-V為內(nèi)核作為主要處理內(nèi)核的新處理器系統(tǒng)。
報(bào)告稱,目標(biāo)是構(gòu)建一個(gè)8核的處理器,運(yùn)行頻率為2GHz,使用12納米工藝。
在項(xiàng)目資金中,三分之二將由項(xiàng)目的主要客戶(如Rostec和其子公司)提供,而最后三分之一則來自聯(lián)邦預(yù)算。
這些處理器將在俄羅斯教育和科學(xué)部以及衛(wèi)生部試運(yùn)行。