由維護者破壞自家NPM(Node Package Manager)套件的供應鏈攻擊又一樁,資安業者Snyk發現,在3月15日熱門的JavaScript前端框架Vue.js遭受NPM生態系供應鏈攻擊,這是巢狀相依項目node-ipc和Peacenotwa套件的維護者,因為抗議俄羅斯入侵烏克蘭,所做出的破壞行為。

Snyk提到,雖然這是一種以抗議為動機的攻擊,但凸顯了軟體供應鏈所面臨的大問題,也就是程式碼的相依性,可能對用戶的軟體安全造成重大的影響。目前Snyk正利用CVE-2022-23812來追蹤該安全事件。

這個事件可被追溯至3月8日,NPM維護者Brandon Nozaki Miller(RIAEvangelist)編寫了一個稱為Peacenotwar的NPM套件,並且加入模組描述提到,該模組程式碼作為非破壞性範例,來顯示控制Node模組的重要性,同時,也以非暴力的抗議方法,來抗議俄羅斯威脅世界和平的侵略行為。該模組會在使用者的桌面,顯示表達和平理念的訊息。

這個模組在3月15日前幾乎沒有被下載過,但是當NPM維護者將該模組添加到熱門的模組node-ipc時,Peacenotwar開始被大量下載,因為node-ipc是生態系中,許多JavaScript開發者所使用的熱門相依項目,其中一個使用該項目的熱門專案,是Vue.js的命令列工具Vue.js CLI。

當前最新的穩定版本NPM套件node-ipc 9.2.2綑綁了Peacenotwar,Snyk提到,有趣的是,Peacenotwar綑綁了帶有萬用字元*相依範圍的colors NPM套件。colors套件是發生在2022年1月另一起NPM軟體供應鏈攻擊的主角,因為作者Marak Squires不滿大部分財星500大企業使用他的專案colors和Faker,但是卻又不願支付費用,因而一氣之下破壞程式碼儲存庫。

Snyk提到,雖然維護者RIAEvangelist的蓄意破壞,被部分人視為合法的抗議行為,但在表達意見的同時,也影響他在開發社群中的聲譽。目前RIAEvangelist還維護40多個NPM套件,下載總數達數億,雖然目前沒有任何跡象,顯示RIAEvangelist在其他的軟體套件進行類似的濫用行為,但是Snyk仍提醒用戶應該對npmjs生態系更新保持警覺。

由於擔心之後程式碼更新可能帶給用戶其他額外的風險,Snyk建議用戶應該避免使用node-ipc套件,萬一該套件已經綑綁在應用程式中,Snyk則建議用戶使用NPM套件管理器,覆蓋遭到破壞的版本,並且釘選已知良好版本。

Snyk表達支持烏克蘭的立場,並且也採取行動停止在白俄羅斯和俄羅斯的業務,但是該公司提到,類似的故意濫用行為破壞全球開源社群,因此他們必須將受影響的node-ipc版本標記存在安全漏洞。同時由於類似的供應鏈安全事件一再發生,Snyk認為,這表明企業需有正確管理和快速應對開源相依項目風險的能力。

熱門新聞

Advertisement