軟體供應鏈安全業者 Socket 揭露一起新的供應鏈攻擊:兩個 GitHub 帳號於 10 月 8 日,將偽裝成資安稽核的惡意工作流程推送至多個儲存庫,用以竊取憑證。Socket 指出,受影響的儲存庫達數萬個,其中包含共乘平台 Uber 持有的專案。
兩個帳號推送同一份惡意檔案
10 月 8 日,名為「henrywoo」與「kitao」的兩個 GitHub 帳號,將一份名為「.github/workflows/security-audit.yml」的惡意 GitHub Actions 工作流程(workflow),推送到它們具備修改權限的儲存庫。GitHub Actions 是在儲存庫內執行的自動化任務,可在特定事件發生時進行程式碼測試、軟體建置或應用程式部署。
Socket 研究人員表示,這份惡意檔案出現在數萬個儲存庫中,涵蓋兩個帳號擁有寫入權限的專案。已知受影響的專案包括:「henrywoo」建立的 AI 專案 pyllama 與 chatllama、「kitao」名下的 pyxel,以及 Uber 持有、由「henrywoo」擔任原作者而具備寫入權限的 athenadriver。其中 pyxel 通常透過 PyPI(Python 套件庫)與 crates.io(Rust 套件庫)散布。
以「資安稽核」為名竊取憑證
這次攻擊的偽裝相當細緻。攻擊者以單一檔案提交,commit 訊息為「Add security audit workflow」與「Update security audit workflow」,看起來像例行維護,檔名與訊息也都像一般的資安工具。
但這份工作流程並不執行任何安全檢查,而是竊取受影響儲存庫中的憑證,並透過 HTTP 傳送到外部伺服器 193.32.204[.]199。由於它看起來像正當的資安工具,又隨儲存庫的自動化流程一起執行,因此可能不被察覺。
Socket 發現,即使是沉寂長達十年的儲存庫也遭波及。研究人員據此推測,攻擊者是系統性列舉所有可存取的儲存庫,而非依活躍程度或價值挑選目標。整起活動看起來是自動化執行,而非人工鎖定。
竊密範圍較 GhostAction 擴大
這起事件的攻擊流程,與程式碼密鑰安全業者 GitGuardian 在 2025 年 9 月發現的 GhostAction 行動相似,
GhostAction 並於 2026 年 10 月再度出現。Socket 指出,這次的變種擴大了攻擊者可竊取的內容。
早期的 GhostAction 主要鎖定 GitHub Actions 中儲存的密鑰,例如 API 金鑰與存取權杖(access token)。新變種還會以規則運算式(regular expression)搜尋儲存庫檔案與完整 Git 歷史紀錄中的憑證。這代表開發者不慎寫入原始碼、設定檔或舊版檔案的敏感資訊,即使後來已從最新版本刪除,仍可能被找出。新變種也鎖定雲端服務與 AI 服務的憑證,可能使基礎設施、託管應用程式與第三方服務暴露於風險中。
惡意工作流程仍留在預設分支
Socket 報告指出,截至 10 月 9 日,惡意工作流程仍存在於其檢視的儲存庫預設分支,包括 uber/athenadriver 與 kitao/pyxel。工作流程也已在受影響的儲存庫成功執行,代表竊取憑證的行為並非僅止於植入嘗試。
不過,Socket 發表報告時,尚未觀察到攻擊者因此在 PyPI 或 crates.io 發布惡意套件版本。但這不代表被竊的憑證沒有被用於其他用途,只是尚未發現這兩個套件庫出現後續的惡意版本。
本文參考 Infosecurity Magazine 外媒報導編譯。