NPM(Node Package Manager)生態系統近期遭遇迄今為止規模最大的供應鏈攻擊之一,超過 187 個熱門套件被先進惡意軟體入侵,該惡意軟體具備自我傳播能力並能自動蒐集憑證。受影響套件每週下載量龐大,包括 angulartics2、ngx-toastr、@ctrl/tinycolor 等。此次攻擊顯示網路犯罪者正進化攻擊手法,開發出類似「蠕蟲」的惡意程式,可自動在軟體供應鏈中擴散。本文將對攻擊方法、惡意載荷技術能力,以及此次前所未有供應鏈入侵的 IOC 進行完整分析。
Mend.io 已對我們的開發環境及產品進行內部審查,並確認此次零日漏洞事件 未對我們造成影響。
這起攻擊始於駭客協同入侵多個套件維護者帳號,橫跨不同組織。攻擊者成功滲透維護者的帳號,得以將惡意程式碼植入套件中。
本次攻擊最具威脅之處,在於惡意程式能自動在在 NPM 生態系統中擴散,他會自動修改 package.json 檔案,並透過合法的維護者憑證重新發佈含有後門的版本。
不同於傳統需人工操作的供應鏈攻擊,這次的惡意程式則以真正的「蠕蟲」方式運作,具備自動化傳播能力。它會在已遭入侵的環境中掃描 npm 專案,自動竄改其相依套件,並重新發布內嵌惡意程式的版本,形成指數型擴散模式,能在短時間內危及整個軟體生態系統。
此惡意載荷被設計可在 多種環境中運作,包括開發者工作站、CI/CD 管線以及生產伺服器,藉此最大化其憑證竊取與外洩的可能性。
該惡意程式透過 npm 套件的生命週期掛鉤(lifecycle hooks) 觸發,通常發生在安裝或更新套件的過程中。
惡意程式分為多個階段,針對不同環境設計協同運作機制,即能有效蒐集憑證,又能保持隱蔽性。
階段一:環境偵察與 TruffleHog 佈署
惡意程式首先下載並執行 TruffleHog ,這是一款合法的開源憑證掃描工具,用來在遭入侵的系統中系統性搜尋外洩的密鑰與憑證。
階段二:雲端中繼資料端點利用
該惡意程式專門鎖定 雲端環境的中繼資料端點(metadata endpoints),以竊取雲端服務憑證與實例相關資訊。
階段三:GitHub 儲存庫操控
惡意程式會在被入侵的 GitHub 帳號下建立 「Shai-Hulud」儲存庫,用於儲存與整理竊取來的憑證,方便攻擊者隨時存取。
這款惡意程式最令人憂心的地方,在於其自我傳播能力,能夠在無需人工操作的情況下,自動在 npm 套件間擴散。
惡意程式會在遭入侵的環境中掃描 package.json 檔案,並自動竄改其內容,加入惡意相依套件或生命週期掛鉤(lifecycle hooks)。
該惡意程式利用 GitHub Actions 來自動化憑證外洩,並在儲存庫更新過程中維持持續性。
這起 npm 供應鏈攻擊展現了威脅行為者能力的重大進化,並對整個軟體開發生態系統帶來前所未有的風險:
指數型傳播潛力
其「蠕蟲式」行為具備指數級擴散效應,每個遭入侵的套件都有可能進一步危及多個下游套件,形成連鎖反應,在數小時內便可能影響成千上萬個專案。
針對開發者的精準攻擊
透過專門鎖定 開發者環境,攻擊會直接影響擁有較高權限並能存取多個系統、版本庫及雲端環境的個人,讓每次感染的潛在影響力被大幅放大。
自動化大規模憑證蒐集
透過整合 TruffleHog,攻擊者得以在完整的開發環境中系統性地搜尋並蒐集憑證,可能外洩的敏感資訊包括:
CI/CD 管線污染
由於該惡意程式能夠竄改 package.json 並重新發布套件,它具備污染 CI/CD 管佈的能力,進一步可能影響到生產部署,甚至在已上線的應用程式中留下持續性的後門。
此次攻擊展現出與 S1ngularity/nx 威脅團體相符的特徵。該組織過去曾發動過多起精密的 npm 供應鏈攻擊,而這次使用的「Shai-Hulud」儲存庫命名方式也與其既有攻擊模式一致,顯示該威脅行為者仍在持續活動。
進階自動化能力
多階段載荷設計
對雲端原生環境的掌握
濫用 GitHub Actions
自我傳播的蠕蟲式行為
此次分析的高階自我傳播惡意程式,代表了供應鏈威脅能力的顯著升級。透過 自動化擴散、全面憑證蒐集 以及雲端原生環境利用,該惡意程式展示出威脅行為者如何適應現代開發流程與基礎建設。
這起事件凸顯了供應鏈安全的重要性,以及在整個軟體開發生命週期中採取全面性資安措施的必要性。隨著套件生態系統持續擴大、開發流程日益雲端化,我們可以預期未來將出現更多針對現代軟體開發核心元素的複雜攻擊。
為防範類似的供應鏈攻擊與自動化憑證蒐集,開發者與組織應採取以下措施:
隨著供應鏈攻擊愈發自動化與精密,主動防護與全面監控顯得尤為重要。NPM 生態系統規模龐大,加上開發社群對第三方套件的高度依賴,使其成為網路犯罪者偏好的攻擊目標,整個軟體開發社群需提升警覺並加大安全投入。
在此次攻擊中,以下套件已被確認遭到入侵。組織應立即檢查其相依套件及版本,以確保安全。
(請於網頁最下方留下資訊,獲取遭入侵的套件清單)
Mend.io 可即時掃描應用程式中的 OSS 套件,識別其中的安全漏洞和合規性風險,並提供修復漏洞和解決合規性問題的建議。同時,Mend.io 也具備授權合規性管理功能,可自動識別軟體中的開源授權,確保符合企業內部政策與法規要求,避免潛在的法律風險。此外還能生成軟體物料清單(SBOM),並提供持續監控和更新。
透過 Mend.io 企業可將開源安全與合規檢測無縫整合至 CI/CD 開發流程,在開發早期就能發現與解決問題,減少修復成本與合規性風險並提升開發效率。
• 快速搜尋弱點、元件,輕鬆收集完整資訊
• 提供弱點修復建議與完整風險評估資訊
• 多面向報表,有效透析問題
• Shift Left,降低修補成本
• 持續追蹤資安弱點與惡意程式威脅
若您對 Mend 有興趣,歡迎於官網留下資訊,將會有專人與您聯繫 ➤ https://www.gss.com.tw/mend-io