2025 年 9 月 8 日,幾個廣泛使用的 npm 套件 (包括 chalk、debug 和 color) 被發現受到攻擊,這已迅速成為迄今為止最大的開放原始碼供應鏈事件之一。這些套件每週的下載量合計超過 20 億次,因此這次的入侵事件風險極高且影響深遠。
以下是發生了什麼事、攻擊如何運作,以及OPSWAT 技術如何協助抵禦未來類似的威脅。
攻擊摘要
該攻擊始於針對其中一個 npm 套件維護者的網路釣魚活動。一封來自 support@npmjs.help
(就在攻擊發生前幾天註冊的虛假網域) 誘騙受害者交出憑證。透過存取維護者的 npm 帳戶,攻擊者發佈了惡意版本的套件。
注入的程式碼是專門設計的加密竊取惡意軟體,目的是搶劫與錢包和分散式應用程式 (dApp) 互動的終端使用者的加密貨幣交易。
這次事件再次突顯開放源碼信任隨時可能被武器化,就像2025 年 7 月 ESLint 供應鏈黑客事件一樣。
使用的攻擊技術
1.特定瀏覽器執行
惡意軟體會執行環境檢查,以確保只在瀏覽器內執行。在伺服器或 CI/CD 管線上,它會保持休眠狀態,增加偵測的難度。
2.API 截取
惡意的有效載荷連結到核心網頁 API,包括
window.fetch
XMLHttpRequest
window.ethereum
(錢包供應商)
這允許惡意軟體悄悄地監視、攔截和修改網路請求。
3.交易劫持
一旦嵌入,惡意程式碼就會超越被動觀察,主動干擾加密貨幣活動。特別是,它會掃描多個區塊鏈上的錢包地址和交易有效載荷,包括以太坊、Solana、比特幣、Tron、Litecoin 和比特幣現金。
從那裡開始,有效載荷執行替代技術:
- 以攻擊者控制的位址取代合法的錢包位址,使用相似性檢查(例如 Levenshtein 距離)產生的 lookalike 位址。
- 這意味著轉移到
0xAbc123...
可能悄然成為0xAbc129...
而不會引起懷疑。
- 最重要的是,交換發生在使用者簽署交易之前,因此即使使用者介面顯示正確的位址,但已簽署的請求已經被篡改。
4.隱身閃避
攻擊者還採取了一些措施,以確保其惡意軟體盡可能保持隱藏狀態。該有效載荷沒有進行可能引起受害者警覺的可見變更,而是在背景中安靜地運作:
- 避免明顯的 UI 轉換,因此錢包介面看起來沒有改變。
- 靜默持續,在整個瀏覽會話中保持掛勾活動。
- 針對核准和轉帳兩者,不僅能盜取資金,還能操縱錢包權限,以供日後利用。
為什麼這種攻擊如此危險
- 規模龐大:受影響的套件每週下載量高達數十億次。
- 跨鏈定位:不僅限於 Ethereum。多個主要區塊鏈都受到影響。
- 使用者無法察覺:受害者相信他們批准的是安全交易。
- 生態系統信任漏洞:一個被入侵的維護者帳戶波及整個 npm 生態系統。
OPSWAT的回應
採用最新資料庫版本的OPSWAT SBOM技術已經可以偵測並標示這些惡意套件。
OPSWAT SBOM 技術是眾多業界領先的安全解決方案和技術之一,可在 MetaDefender Core和 MetaDefender Software Supply Chain:
- 漏洞分析:自動掃描相依性的已知漏洞和惡意版本。
- 持續監控:監視 npm、PyPI 及 Maven 等套件庫,以偵測可疑的變更。
- Multi-AV & Heuristics:偵測隱藏在套件內的混淆式惡意軟體。
- CI/CD 整合:在將受影響的依賴項目拉入建置之前將其阻斷。
- SBOM 生成: 以標準格式(如 CycloneDX、SPDX、JSON 和 PDF)匯出 SBOM 報告,以支援稽核和合規目的。
您現在應該做什麼
- 審核相依性:檢查專案中受影響的 npm 套件。
- 加強網路釣魚意識:訓練開發人員和維護人員識別偽造的電子郵件。
- 使用 OPSWAT MetaDefender Software Supply Chain:透過持續的威脅與弱點監控,獲得軟體供應鏈風險的能見度。
- 強化帳戶安全性:在所有套件註冊帳號上維護 2FA。
關鍵要點
- 維護者帳戶是首要目標。他們的安全就是您的安全。
- 供應鏈攻擊的規模不斷擴大:數以億計的下載量可立即被武器化。
- 像MetaDefender Software Supply Chain 這樣的主動監控和零信任工具不再是可有可无的,而是必不可少的。
結語
這起事件突顯出,只要有一個可信賴的維護者帳戶遭到入侵,開放原始碼生態系統就會變得非常脆弱。數十億的下載量攸關重大,組織必須認清供應鏈安全與端點或網路安全同樣重要。主動的可視性、持續的監控以及強大的安全實務是防範下一次開放原始碼外洩的最佳方法。
進一步了解OPSWAT SBOM和 MetaDefender Software Supply Chain如何保護您的開發管道,並防止開放原始碼供應鏈攻擊。