
GitLab GraphQL 漏洞可偽造合併紀錄,自架用戶要即升級
毋須登入已可改動公開專案,蜜罐亦見到利用嘗試
呢個漏洞要優先處理
GitLab 喺 8 月 17 日緊急推出修補,處理 GraphQL 指令引起嘅程式碼注入漏洞 CVE-2026-19478,CVSS 評分達 9.4。官方確認,攻擊者喺特定情況下毋須登入、亦唔使等用戶撳連結,就可能遙距改動或者刪除公開專案同用戶資料。GitLab.com 同 GitLab Dedicated 已經更新,今次要自己處理嘅主要係 Self-Managed GitLab 管理員。

圖片:Mondoo
邊啲版本中招、要升去邊
Community Edition 同 Enterprise Edition 都受影響,範圍由 18.2 起至 18.11.11 之前、19.0.8 之前、19.1.6 之前,同 19.2.4 之前。安全版本分別係 18.11.11、19.0.8、19.1.6 同 19.2.4。如果仲停留喺 18.2 至 18.10,嗰幾條舊分支冇獨立修補,要安排升上仍受支援嘅分支;單靠封住部分功能亦唔算完整處理,官方建議係盡快更新。
危險位落喺開發流程嘅信任紀錄
watchTowr 重現漏洞後指,攻擊者除咗可以刪除專案,亦可能改寫專案狀態、封鎖維護者同偽造 merge 紀錄。iThome 報道引述 Mondoo 分析,假合併紀錄可以令惡意改動睇落似經過可信開發者審批。如果 CI/CD 按呢啲假紀錄編譯同發佈,受污染嘅成品就可能流向其他團隊或者用戶,形成供應鏈風險。
供應鏈攻擊暫時仍屬風險推演
要講清楚,現階段未有證據顯示呢個漏洞已經引發大規模供應鏈入侵。watchTowr 講嘅實際利用活動,來源係佢哋嘅蜜罐系統,代表網上已有人試緊相關手法,但唔等於大量真實 GitLab server 已經失守。Mondoo 提到偽造審批再污染發佈流程,亦係按漏洞能力推演出嚟嘅攻擊路線,暫時唔係已確認事故。
更新完都要查清楚有冇俾人入過
修補只會截住之後嘅請求,唔會話你知之前有冇人郁過資料。曾經直接開放上網嘅管理員,應翻查異常而未登入嘅 GraphQL 請求、冇對應 merge request 嘅 protected branch commit、同通知或內部工單對唔上嘅審批及權限改動。GitLab 入面嘅紀錄本身可能俾人改寫,所以亦要同 reverse proxy、load balancer、CI runner、電郵同團隊通訊紀錄互相比對。
發佈過嘅成品亦要重新核實
如果漏洞曝光前後曾經由受影響嘅 GitLab 發佈軟件,團隊要重新比對成品、source commit、signed tag 同 CI build 紀錄。如果發現可疑改動,或者還原唔到審批過程,就要檢查 pipeline 用到嘅 deploy key、runner token、CI/CD variable 同雲端憑證,再視乎影響範圍逐一更換。自架 GitLab 嘅公司 IT 而家最實際嘅次序係先升級,再用 GitLab 以外嘅紀錄追查異常。
參考來源
- iThome — GitLab重大GraphQL漏洞恐將被用於軟體供應鏈攻擊 — original report
- GitLab Critical Patch Release: 19.2.4, 19.1.6, 19.0.8, 18.11.11 — GitLab 官方公告,確認受影響範圍、CVSS 評分、修補版本同託管服務狀態。
- Deleting a Repo Is Loud. Forging a Merge Is the Part Nobody's Talking About. — 分析偽造合併紀錄點樣影響審批信任、CI/CD 同事後調查。
- Critical GitLab Flaw Exploited Shortly After Disclosure — 引述 watchTowr 蜜罐觀察同漏洞重現結果,亦交代利用活動證據嘅限制。
本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。







