對防禦者來說,公開原始碼提供了研究攻擊細節的機會;但對攻擊者而言,它也大幅降低了複製這種供應鏈攻擊的門檻。
Shai‑Hulud 攻擊最引人注目的地方是它的 速度與規模。
2026 年 5 月 11 日,TeamPCP 在數小時內發布數百個惡意套件版本,污染 npm 與 PyPI 套件庫。這些套件被開發者安裝後,就會把惡意程式帶入本地開發環境或 CI/CD 管線。
與傳統「單一套件被入侵」的情況不同,Shai‑Hulud 被描述為一種 可自我擴散的蠕蟲式供應鏈攻擊。只要初始套件被安裝,它就能利用取得的憑證或發布權限,繼續感染更多套件。
之後不久,研究人員發現 TeamPCP 在 GitHub 上發布了兩個包含完整蠕蟲原始碼的儲存庫,並採 MIT 授權。短時間內就出現數十次 fork,甚至有人立即加入新的平台支援,顯示這類工具一旦公開就可能迅速演化。
惡意程式被公開並不罕見,但 以寬鬆開源授權釋出攻擊工具相對少見,而且具有策略意義。
對 資安防禦團隊而言,完整原始碼可以用來:
但對 攻擊者而言,MIT License 允許任何人自由 fork、修改與再發布程式碼,使得這套攻擊方法可以被快速改寫並套用到新的生態系或平台。
換句話說,Shai‑Hulud 不只是一次攻擊事件,而是展示了一套 可重複使用的供應鏈攻擊模式。
根據多份安全分析報告,這個蠕蟲結合了多種供應鏈攻擊技巧。
蠕蟲的一項關鍵能力是 從 CI/CD 系統中竊取 OpenID Connect(OIDC)token,特別是 GitHub Actions 的發布流程。
攻擊者不必取得長期憑證,而是從 CI runner 的執行環境中擷取短期 token,進而以合法流程發布惡意套件。
更令人擔憂的是,部分惡意套件 仍然帶有 SLSA Build Level 3 的 provenance(來源證明)。
這表示從驗證系統的角度看,套件似乎是由可信的 CI 管線生成,但實際內容已被植入惡意程式。
當開發者安裝受感染套件後,蠕蟲會部署一個憑證竊取模組,掃描系統中的敏感資訊。目標包括:
部分報告指出惡意程式會掃描 超過 100 個常見憑證儲存位置。
取得憑證後,蠕蟲可以利用被劫持的發布流程,自動感染更多套件,形成跨專案、跨生態系的連鎖供應鏈攻擊。
某些安全分析還指出,該蠕蟲包含 可能觸發資料破壞的 failsafe 或 wiper 機制。
因此,若開發環境被感染,安全專家通常建議直接視為完整系統入侵事件處理。
2026 年 5 月的事件其實是 TeamPCP 一系列供應鏈攻擊的延續。
Cloud Security Alliance 的研究指出,在 2026 年 4 月 29–30 日,同一組織曾同時攻擊 npm、PyPI 與 Packagist 生態系,影響約 1,800 個專案,主要利用外洩憑證與 CI/CD 設定錯誤。
與先前攻擊相比,5 月的 Shai‑Hulud 波次顯示攻擊手法升級:
這顯示攻擊者正在快速適應新的供應鏈防禦機制。
如果組織在攻擊期間安裝過受影響套件,風險可能不只限於單一套件。
安全建議指出,任何安裝過受感染 npm 或 PyPI 套件的環境都應視為可能已被入侵,因為蠕蟲會竊取憑證並在開發與 CI 系統中持續存在。
另一個重要教訓是:
即使套件具有簽章或 provenance,也不代表安全。若 CI/CD 發布流程本身被攻擊者控制,簽章仍可能看起來完全合法。
若懷疑受到影響,資安團隊通常會優先採取以下行動:
此外,由於 蠕蟲原始碼已公開,未來出現修改版或模仿攻擊的可能性也顯著增加。
Shai‑Hulud 事件突顯了一個明確趨勢:攻擊者不再只針對漏洞,而是直接 攻擊開發流程本身。
當 TeamPCP 將這個蠕蟲開源後,一場實際的攻擊行動同時變成了一份可研究的「藍圖」。現在,全球安全團隊與攻擊者都能研究同一份程式碼,而誰能更快理解並利用它,將影響未來軟體供應鏈安全的攻防格局。