圖片來源: 

ReversingLabs

近年來,企業的資安逐漸意識抬頭,重要的資訊系統可能都強化管理,採取各式的防護措施因應,駭客也開始轉移目標,鎖定開發者下手,藉由提供免費開源工具和程式庫的誘餌,做為散布惡意軟體的管道,進而從開發環境發動供應鏈攻擊。例如,ReversingLabs威脅研究員Tomislav Maljic指出,他們在今年的2月下旬偵測到,有超過700個惡意軟體,以Ruby程式語言開發工具的名義,上架到套件管理平臺RubyGems。

其中部分惡意軟體的名稱、版本,以及用途描述等資料,與某些原本市集裡常見開發工具完全一模一樣,誤導了不少開發人員,而使他們下載到電腦。一旦這些惡意軟體植入開發者的電腦,就會監控比特幣付款資料,然後將錢包內容移轉到特定帳戶。

RubyGems是什麼?它是Ruby社群的套件管理平臺,讓開發者能以統一的格式發布Ruby程式或是程式庫,供其他人也能直接下載使用,這些Ruby程式與程式庫套件,統稱為Gem。透過RubyGems,程式開發者能快速取得所需的Gem套件,建置自己的開發環境。這個套件管理平臺於2004年3月首度公開發表,直到2007年底Ruby推出1.9.0版,才被官方納入正式的功能模組。

惡意軟體上架不久,就讓許多Ruby開發人員上當

事實上,這些惡意軟體已大量散布,下載約10萬次。它們源於JimCarrey和PeterGibbons這兩個開發者帳號,大部分都是在2月16日到25日之間上傳。而有些惡意軟體,更是藉著顯示名稱和說明資訊,讓開發者上當。

像是一款名為Atlas_client的API用戶端工具,便被攻擊者冒名上架名稱相同的惡意軟體,下載數量共2,100次,相較於正牌Ruby套件被下載6,496次,冒名惡意軟體顯然也騙倒不少開發者。Ruby官方獲報後,也將上述700多款惡意軟體下架。

利用套件管理平臺滲透至應用程式內部的事件時有所聞

駭客利用程式語言的套件管理系統,上架含有惡意程式的套件,來發動供應鏈的情況,已經不是第一次發生。例如,在Node.js的套件管理工具NPM上,有一款名為Event-Stream的熱門JavaScript程式庫,因為原開發者Dominic Tarr不再維護,於2018年下旬交由另一個開發者繼續經營,但這名開發者接手後,加入Flatmap-Stream相依套件,後來藉此植入可竊取比特幣的惡意程式。

外界之所以發現這起攻擊事件,是因為比特幣錢包專案Copay採用Event-Stream之後,駭客開始於11月發動攻擊,偷竊受害者的私鑰,然後將比特幣移轉到駭客的帳號。由於Event-Stream擁有大量使用者,每個星期下載量超過180萬次,必須搭配它才能運作的NPM套件,超過1,700個,影響範圍相當廣泛。


Advertisement

更多 iThome相關內容