示意圖,與新聞事件無關。

圖片來源: 

維基共享資源;作者:AntanaCoins

在npm.org上每周有超過200萬次下載的JavaScript npm套件Event-Stream近日遭爆被植入了專門偷竊比特幣的後門程式,再度突顯了軟體供應鏈的攻擊趨勢,也意外掀起維護開源碼的責任歸屬議題。

Event-Stream是由紐西蘭的開發人員Dominic Tarr所建立,但Tarr大概在3個月前把此一專案移交給另一名代號為Right9ctrl的開發人員。

Right9ctrl在9月8日釋出了Event-Stream 3.3.6,嵌入了一個新的相依套件Flatmap-Stream,繼之於10月5日將後者更新至Flatmap-Stream 0.1.1,且在該版本中植入了可竊取比特幣的惡意程式。

儘管有眾多的專案採用Event-Stream,但該惡意程式按兵不動,一直到被比特幣錢包Copay採用。當Copay納入了Event-Stream 3.3.6之後,惡意程式開始竊取錢包內的機密資訊,包括使用者的私鑰,並將比特幣移轉到駭客的帳號。

目前並不確定駭客得手的金額,但開發Copay的BitPay已坦承自Copay 5.0.2至5.1.0都受到感染,呼籲使用者應該假設自己的私鑰已被存取,最好儘速更新到Copay 5.2.0,再把資金移到新的錢包。

有些開發人員把此事歸咎給Event-Stream的原始開發者Tarr,認為他並未善盡維護Event-Stream專案的責任,促使Tarr本人出面回應,也掀起了開源社群的討論。

Tarr開宗明義地指出,這不只是單純的一件事,還有不少大家在相依樹中所仰賴的模組已成為這些模組作者的負擔,他打造Event-Stream只是因為有趣,而不是為了利他,創造Event-Stream是一種學習,而學習帶來樂趣,放棄Event-Stream只是因為這事對他來說已經太容易了,分享也能協助他人學習,他相信大多數在npm上的小模組都是基於類似的原因而建立,當然假如他知道對方有不良企圖就不會這樣做。

此外,Tarr還點出了開源碼社群現有的問題,因為有許多大家所仰賴的模組是由已經失去興趣、感到倦怠,甚至是自己都沒在使用的開發人員負責維護,大家都想要共享這些程式碼,卻不想要分擔維護這些程式碼的責任。

Tarr說,撰寫出受歡迎的模組承擔了很多的責任,但得到的報酬卻是零。他建議開源社群可以考慮付費給維護專案的人員,而且只依賴這些確定有在維護的模組,還認為開源社群亦應分擔維護責任。

也因此,軟體供應鏈的攻擊趨勢在開源社群中似乎更難防範,因為這些開源專案通常缺乏資金與資源,多半是開發人員或使用者在閒暇時的作品,也不容易察覺開源碼是否已遭到惡意竄改。


Advertisement

更多 iThome相關內容