新聞

GitHub 成為攻擊者的多功能武器庫:從漏洞利用到 C2 基礎設施的三重角色

2026 / 04 / 09
編輯部
GitHub 成為攻擊者的多功能武器庫:從漏洞利用到 C2 基礎設施的三重角色
GitHub 不再只是全球最大的程式碼託管平台,更已成為攻擊者眼中的多功能武器庫。近期多起資安事件顯示,攻擊者正以前所未有的規模與效率,將這個開發者社群的核心基礎設施轉化為攻擊鏈的關鍵節點,從自動化漏洞掃描、指揮控制中心到惡意套件散布,GitHub 同時扮演三重角色。

第一重角色:AI 驅動的大規模漏洞掃描目標

雲端資安廠商 Wiz 近期揭露一項代號「prt-scan」的攻擊活動,攻擊者疑似利用 AI 自動化工具,鎖定 GitHub 上使用 pull_request_target 工作流程觸發器的開源專案,進行大規模漏洞利用嘗試。

這起攻擊始於今年 3 月 11 日,攻擊者以六個不同的 GitHub 帳號分六波行動,累計提交超過 500 個惡意拉取請求。Wiz 分析逾 450 次利用嘗試後指出,成功率雖不到一成,但仍導致至少兩個 NPM 套件遭到入侵。

pull_request_target 觸發器是 GitHub Actions 的一項功能,設計目的在於讓主儲存庫執行工作流程,即便拉取請求來自不受信任的分支也不例外。由於執行時具備完整的儲存庫權限且可存取機密資料,攻擊者便能利用惡意拉取請求竊取 API 金鑰或雲端憑證。

攻擊流程相當系統化:先掃描使用該觸發器的儲存庫,接著分叉目標專案、建立新分支,並將惡意程式碼偽裝成常規更新提交,誘使專案自動執行。Wiz 指出,儘管攻擊載荷的設計看似精密,實際執行卻漏洞百出,顯示攻擊者未充分理解 GitHub 的權限模型。

Wiz 描述,攻擊者嘗試了多階段的複雜載荷,卻充斥著無邏輯、幾乎不可能奏效的技術。不過,本波攻擊最值得關注的警訊在於:AI 輔助自動化已大幅降低大規模供應鏈攻擊的門檻。低技術門檻的攻擊者如今能在極短時間內、以極少資源,對數百個目標發動攻勢。

第二重角色:北韓駭客的指揮控制中心

Fortinet FortiGuard Labs 揭露另一波疑似與北韓有關聯的攻擊活動,目標鎖定南韓組織。在此案中,GitHub 扮演截然不同的角色,被用作指揮與控制(C2)基礎設施。

攻擊鏈的起點是一個偽裝成正常文件的 Windows 捷徑檔案,透過釣魚郵件散布。受害者點擊後,系統會顯示一份誘餌 PDF 文件,並在背景悄悄執行惡意 PowerShell 腳本。該腳本會先掃描虛擬機器、除錯工具與鑑識軟體等相關程序以規避分析,確認環境安全後再提取 VBScript 並設置排程工作,之後每 30 分鐘以隱藏視窗方式重新執行,確保系統重啟後仍能持續運作。

腳本接著蒐集受感染主機的系統資訊,並透過硬式編碼的存取令牌,將資料上傳至由帳號「motoralis」管理的 GitHub 儲存庫。攻擊者也會從同一儲存庫拉取指令或額外模組,利用 GitHub 平台的高信任度掩護惡意流量。

Fortinet 研究員 Cara Lin 指出,這批攻擊者刻意減少使用自製惡意程式,改以 Windows 內建工具(Living off the Land Binaries,簡稱 LolBins)進行部署、規避與持久化,以便在面對更廣泛的受害者時維持較低的偵測率。

第三重角色:惡意套件散布管道

北韓駭客組織 UNC1069 在另一條戰線發動攻勢。廣受歡迎的 JavaScript HTTP 用戶端函式庫 Axios,其 NPM 套件於上月底遭社交工程攻擊入侵。攻擊者取得首席維護者 Jason Saayman 的帳號控制權後,發布兩個含有遠端存取木馬的惡意版本。Axios 每週下載量逾一億次,儘管惡意版本在數小時內即遭下架,其潛在擴散範圍仍令業界震驚。

Saayman 事後在 GitHub 說明,此次攻擊早在事發前兩週便已開始布局。攻擊者偽裝成某公司創辦人,複製其身份與公司形象,邀請他加入一個設有多個活躍頻道、外觀極為逼真的 Slack 工作區,隨後再邀約參與 Microsoft Teams 會議。會議中,他被引導安裝一個「系統缺少的檔案」,而這正是後來被植入 NPM 套件的 RAT。即便 Saayman 已啟用雙重驗證(2FA),攻擊者仍取得對電腦的完整控制權。

資安廠商 Socket 的研究顯示,這波攻擊的目標不只包括 Axios 維護者,Socket 自家工程師與執行長也在名單之中。SentinelOne 研究員指出,過去這類緩慢滲透的手法因需要投入大量人力而難以規模化,但這項限制正在鬆動。Sophos 研究員則補充,AI 大幅降低了建立可信任角色的成本,ClickFix 等投遞機制也讓惡意載荷的傳遞變得輕而易舉。

防護建議

面對 GitHub 平台的三重威脅,資安研究人員建議組織採取以下措施:稽核 GitHub Actions 設定,避免在未受限制的情況下使用 pull_request_target 觸發器,並針對外部拉取請求設置人工審核機制。落實最小權限原則,限制工作流程可存取的機密範圍,並為 GitHub 令牌設定較短的有效期限。強化對 GitHub 平台流量的監控,識別異常的資料外傳行為,尤其留意向不熟悉的儲存庫傳送系統資訊的情況。對開源套件維護者進行社交工程意識培訓,並建立套件發布的多人審核機制,以避免單點授權風險。部署端點偵測與回應(EDR)工具,並針對 LNK 檔案執行、PowerShell 隱藏視窗呼叫,以及建立排程工作等行為設置警示規則。

本文轉載自 DarkReading、TheHackerNews。