
近期,一起以JavaScript為基礎的Node Package Manager(npm)供應鏈大規模攻擊事件震驚加密社群。此攻擊行動成功滲透與以太坊名稱服務(ENS)相關的程式庫,以及數百個較舊的軟體套件,當中有超過十個被廣泛使用於加密貨幣生態系統,據安全公司艾車道安全(Aikido Security)指出,受害範圍十分廣泛。
資安研究員查理·艾里克森(Charlie Eriksen)透露,這次被稱為「Shai-Hulud:第二次降臨」的供應鏈惡意軟體,已感染數百個套件與超過2萬5千個GitHub專案庫。根據調查,攻擊者將惡意程式碼植入超過490個npm套件中,這些套件每月下載量逾1.32億,包含ENS、Zapier、AsyncAPI、Browserbase 和Postman等重要組件。

安全專家指出,這波名為「Shai-Hulud:第二次降臨」的新一波npm供應鏈攻擊,持續瞄準包括Zapier、ENS、PostHog與Postman等主流套件。攻擊者會在發佈的版本中注入惡意程式碼,利用預安裝階段觸發,執行惡意命令並竊取環境變數,進而掌控受害系統。
艾里克森進一步解釋,一旦開發者安裝受到感染的套件,惡意軟體就會在安裝過程中默默運行,在任何安裝完成之前,即開始竊取敏感資料。該惡意軟體會在用戶的開發環境中部署一個名為TruffleHog的自動掃描工具,搜尋密碼、API金鑰、雲端憑證、GitHub與npm帳號資訊,並將所得資訊上傳至一個公開GitHub專案庫,名稱為“Shai-Hulud: The Second Coming”。若竊取的憑證包括存取代碼庫或套件註冊中心的權限,攻擊者就能進一步滲透其他帳戶,擴大攻擊範圍甚至散布更多惡意套件,形成惡性循環。
這次攻擊的演進版本卻與九月初的首次入侵有明顯不同,當時駭客竊取了價值五千萬美元的加密貨幣。Ledger硬體錢包公司指出,該次攻擊隨後出現的「Shai-Hulud蠕蟲」具有自主傳播能力。新一波攻擊以不同策略進行,先透過setup_bun.js安裝Bun,然後用Bun來執行包含惡意程式碼的bun_environment.js,並以動態產生的隨機名稱建立具有竊取資料功能的GitHub專案庫,相比上一次最多感染20個npm套件,這次能入侵多達100個。
自我傳播的惡意軟體暴露觸發點漏洞
加密硬體錢包Ledger的首席技術官Guillemet警告,這些惡意程式不僅竊取API金鑰及Git證書,更會秘密竊取整個環境的憑證。若受到感染的套件被用戶安裝,相關密碼、密鑰與秘密資訊可能已經遭到外洩。他建議未來若對CI/CD流程缺乏監控,應該考慮暫時關閉系統,避免損失擴大。Nextron Systems的研究主管Roth則指出,攻擊者愈來愈容易利用npm套件中的盲點將惡意軟體傳入敏感系統。
他表示,過去我們在作業系統層級對抗惡意軟體,如Slammer、Blaster與Conficker等;如今,惡意軟體已滲入我們每日依賴的軟體生態圈中。npm tokens、傳遞性依賴、帳號安全疏失與透明度低,讓自我傳播的蠕蟲似乎回到了2003年的網路氛圍。他總結,這次Shai-Hulud的破壞事件揭示,軟體套件生態系作為執行面存在巨大的盲點:沒有人監控或加固它們,攻擊者甚至不用利用漏洞就能讓其瘋狂蔓延。
U.S.第一家在區塊鏈上代幣化股票的Exodus公司CEOJP Richardson也質疑微軟未積極應對,認為微軟作為npm的擁有者,應該更快速地偵測與阻止這類攻擊。他表示,「我不懂為何微軟沒有加快反應速度,提前提示大家這些攻擊」並建議所有使用具有預安裝或後安裝腳本的套件,應在npm網站或安裝前提醒用戶以降低風險。





Discussion about this post