對防禦方而言,公開原始碼可以深入分析攻擊細節;但對攻擊者嚟講,呢亦等同將一套成熟攻擊框架免費提供畀全世界。
Shai‑Hulud之所以特別,引起關注嘅原因係佢唔只係單一套件被入侵,而係具備自我傳播能力嘅供應鏈蠕蟲。
2026年5月11日,TeamPCP在數小時內將惡意版本注入npm同PyPI多個套件,快速發佈數百個受感染版本。
與傳統供應鏈攻擊不同,Shai‑Hulud一旦進入開發者環境,就可以利用被盜取嘅憑證同CI/CD流程繼續感染其他套件,形成連鎖式擴散。
之後不久,研究人員發現TeamPCP更進一步——將完整蠕蟲源碼公開在兩個GitHub repository,並採用MIT License。呢個寬鬆開源授權意味任何人都可以自由fork同修改。
一般惡意程式被公開,多數係洩漏或樣本分析,但用正式開源授權發佈攻擊工具其實非常罕見。
對防禦者嚟講,原始碼帶來幾個好處:
但同一時間,攻擊者亦得到明顯優勢。MIT License基本冇限制,代表其他人可以:
結果係,Shai‑Hulud唔再只係一次攻擊,而係變成一個可複製嘅攻擊模式。
根據多份安全分析,呢個蠕蟲結合咗多種供應鏈攻擊技術。
其中一個最關鍵能力係從CI/CD pipeline竊取OpenID Connect(OIDC)token,尤其係GitHub Actions發布流程。
攻擊者唔一定需要靜態憑證,而係在pipeline運行時截取token,然後利用合法發布流程上傳惡意套件。
更令人擔心嘅係,部分受感染套件仍然帶有有效的SLSA Build Level 3 provenance證明。
SLSA(Supply‑chain Levels for Software Artifacts)本來用嚟確保軟件建構流程可信,但當CI/CD pipeline本身被入侵時,即使有簽名或證明亦未必代表安全。
一旦套件被安裝,蠕蟲會啟動憑證竊取程式,掃描開發者電腦與CI環境。報告指出它會尋找超過100個常見憑證儲存位置,例如:
取得憑證後,蠕蟲可以自動發布新的惡意套件版本,繼續感染其他專案,形成供應鏈層面的蠕蟲式擴散。
部分分析指出蠕蟲可能包含破壞性備用機制(dead‑man’s switch),在特定條件觸發時可能刪除或破壞資料。
因此安全專家普遍建議:如果系統安裝過受影響套件,應直接視為已被全面入侵。
其實2026年5月事件並非首次。
Cloud Security Alliance研究顯示,在4月29日至30日期間,TeamPCP已發動跨生態攻擊,影響npm、PyPI及Packagist,涉及約1,800個repository。
之後嘅Shai‑Hulud攻擊可以視為技術升級:
呢種演進顯示攻擊者正在快速適應供應鏈安全防護。
如果組織在攻擊期間安裝過受影響套件,風險不只限於該套件本身。
安全研究指出,任何曾安裝相關版本的開發環境都應視為可能被入侵,因為蠕蟲會竊取憑證並可能在CI/CD流程中持續存在。
另一個重要教訓係:
即使套件具有簽名或來源證明,也不能保證安全,如果發布pipeline本身被攻陷。
安全團隊通常會建議立即採取以下行動:
同時,由於蠕蟲源碼已公開,安全團隊亦需要留意可能出現的新變種或模仿攻擊。
Shai‑Hulud事件顯示,現代攻擊者的目標已經不只是漏洞或單一套件,而是整個開發流程本身。
當TeamPCP把蠕蟲源碼公開後,呢次攻擊某程度上變成一份「公開藍圖」——防禦者與攻擊者都可以研究同改進。未來軟件供應鏈安全的競賽,很可能就會圍繞住呢類攻擊模式展開。