Xygeni GitHub Action遭標籤投毒攻擊 駭客植入C2後門潛伏一週

Xygeni GitHub Action遭標籤投毒攻擊 駭客植入C2後門潛伏一週

2026-03-12
應用程式安全(AppSec)廠商Xygeni於3月10日發布安全事件報告,證實其官方GitHub Action「xygeni/xygeni-action」在本月初遭未知威脅行為者透過「標籤投毒」(tag poisoning)攻擊入侵。攻擊者利用遭洩漏的GitHub App私鑰與維護者個人存取權杖(PAT),在3月3日至3月10日期間,將可變標籤「v5」指向內含C2反向殼(command-and-control implant)的惡意提交,讓任何引用「@v5」的CI/CD工作流程在執行時無聲植入後門,潛伏長達7天。資安專家警告,此事件凸顯GitHub Action供應鏈攻擊風險,對台灣大量使用GitHub Actions的軟體開發與DevSecOps團隊構成嚴重威脅。
 
Xygeni表示,攻擊者首先嘗試透過提交拉取請求(pull request)注入惡意程式碼,但因既有分支保護規則而被阻擋。攻擊者隨即轉向利用可變標籤機制,將「v5」強制指向惡意提交。任何未固定SHA值、直接引用「xygeni/xygeni-action@v5」的工作流程,都會在CI執行階段下載並運行C2植入程式,獲得GITHUB_TOKEN、儲存庫祕密與原始碼存取權,攻擊者擁有3分鐘任意命令執行窗口。
 
Xygeni根因分析顯示,洩漏源為安裝於儲存庫的GitHub App私鑰(.pem檔)遭入侵,搭配維護者PAT形成雙重認證繞過:一用於建立PR,另一用於核准,兩者單獨皆無法突破保護。Xygeni強調,主分支未合併任何惡意程式碼,平台與客戶資料無證據遭入侵,事件已於3月9日發現、3月10日移除毒化標籤並永久刪除。
 
然而,StepSecurity執行長兼共同創辦人Varun Sharma於3月9日率先公開披露,指出攻擊始於3月3日,攻擊者不僅建立三個含後門的PR(皆未合併),更將「v5」標籤指向惡意提交。Sharma批評Xygeni初始修復不完整:「關閉PR與刪除主分支工作流程,對@v5解析結果毫無影響。3月3日至10日,任何引用@v5的工作流程皆執行C2植入。」他強調,標籤投毒才是真正攻擊載體,而非PR本身。
 
Xygeni反駁部分細節,稱無法從GitHub活動日誌確認標籤強制推送時間(force-push不記錄),僅能證實毒化發生在惡意提交建立後、3月9日社群發現前。雙方對時間線仍有爭議,但一致同意攻擊窗口長達一週。
 
Xygeni已承諾未來強化措施,包括:
  • 全儲存庫強制發布不可變性(immutability),禁用可變標籤。
  • 收緊儲存庫權限與貢獻者存取。
  • 維護者提交強制加密簽署。
  • 限制寫入權限僅限少數維護者與管理員。
  • 客戶應立即將工作流程固定至安全SHA值,稽核CI日誌,並輪換事件期間可能暴露的祕密。
 
對台灣影響深遠。台灣軟體開發與DevSecOps生態高度依賴GitHub Actions,許多企業與新創將第三方Action直接引用於CI/CD管線。若未固定SHA而使用標籤(如@v5),極易遭受供應鏈投毒攻擊,導致建置環境遭植入後門、原始碼外洩、祕密被竊,甚至成為勒索軟體跳板。近期台灣已多次傳出GitHub相關供應鏈攻擊事件,此案應視為重大警訊。
 
資安專家建議台灣企業與開發團隊立即採取以下防護措施:
  1. 全面稽核所有GitHub Actions工作流程,將第三方Action固定至已驗證的commit SHA,禁用使用可變標籤(如@latest、@vX)。
  2. 啟用Dependabot與GitHub Secret Scanning,定期偵測與輪換暴露祕密。
  3. 限制GitHub App安裝範圍與權限,僅授予必要儲存庫與最小權限。
  4. 強制所有提交與標籤使用加密簽署(signed commits/tags),並啟用分支保護規則。
  5. 部署CI/CD安全掃描工具,監控工作流程執行異常行為與未授權網路連線。
  6. 企業應建立第三方Action審核流程,未經驗證前禁止直接引用。
  7. 參考Xygeni與StepSecurity建議,定期演練供應鏈攻擊情境,測試回滾與祕密輪換能力。
 
Varun Sharma總結:「標籤投毒是GitHub Actions供應鏈攻擊的致命弱點。只要有人擁有寫入權限,就能瞬間毒化所有引用該標籤的工作流程。固定SHA是唯一有效防護。」
 
Xygeni事件顯示,供應鏈安全已從「選修」變成「必修」。台灣開發團隊若繼續依賴可變標籤與未審核第三方Action,恐成為下一個受害者。資安團隊應立即盤點所有CI/CD管線,將供應鏈防護提升至最高優先級。
 
 
出處: 基於Dark Reading文章《Xygeni GitHub Action Compromised Via Tag Poison》,作者Alexander Culafi,發布日期2026年3月12日;並參考Xygeni官方事件報告、StepSecurity執行長Varun Sharma部落格與訪談,以及相關GitHub Actions供應鏈攻擊分析。