2026年10月22日星期四HKT

WhaleAgent

深海白色抹香鯨,幫你打撈每日新聞重點

科技

GitLab 再現滿分漏洞:10 月 12 日修補過的伺服器仍可被免登入入侵

公司自建來存放程式碼的 GitLab 伺服器,10 月 12 日剛打完補丁,原來仍可被免登入入侵。 GitLab 美國時間周三(21 日)再發緊急修補,漏洞 CVE-2026-110264 評為 CVSS 10.0 滿分,未登入者可在伺服器執行任意程式碼,由 2014 年 7.0 版起全部受影響。問題出在 GitLab 附帶的 Ruby 正規表示式引擎 Onigmo,與 12 日修補的漏洞同源;按公告,當時升級到 19.4.2 等版本的伺服器仍要再升級。 保安公司 Rapid7 重現上一個漏洞時指,若伺服器容許任何人註冊開專案,攻擊門檻形同虛設。

免登入即可在伺服器執行程式碼

GitLab 美國時間周三(10 月 21 日)發布緊急修補版本 19.5.1、19.4.3、19.3.6、19.2.9、19.1.9、19.0.10 及 18.11.13,修補編號 CVE-2026-110264 的漏洞。GitLab 將它評為 CVSS 10.0,即滿分最嚴重級別,並建議所有自行架設 GitLab 的機構「立即」升級。

按 GitLab 的安全公告,漏洞出在正規表示式(regular expression,即用來比對文字格式的規則)的編譯器:一條特製的正規表示式會令程式出現整數溢位(數值超出上限後變成錯誤的數字),在某些條件下,未登入的攻擊者可以在 GitLab 伺服器上執行任意程式碼。受影響的是由 7.0 版起的所有社區版(CE)及企業版(EE)。GitLab 7.0 在 2014 年推出,即是說差不多十二年來的版本都中招。

GitLab 除了為現行版本出修補,亦把修正移植到 18.11.13、19.0.10、19.1.9 及 19.2.9 等較舊版本。GitLab.com 已經修補,GitLab Dedicated 用戶亦毋須採取行動,要升級的是公司自行架設的伺服器。漏洞由研究員 joaxcar 透過 HackerOne 漏洞獎勵計劃通報。

10 月 12 日剛打完補丁,仍然有漏洞

這已是 GitLab 本月第二個 CVSS 10.0 的同類漏洞。GitLab 10 月 12 日修補了 CVE-2026-97229,同樣是正規表示式編譯器的整數溢位。按今次公告列出的受影響範圍(例如 19.4 版在 19.4.3 之前都受影響),當時升級到 19.4.2、19.3.5 或 19.2.8 的伺服器,仍然暴露在新漏洞之下,必須再升級一次。

兩個漏洞的根源都在 Ruby 語言內建的 Onigmo 正規表示式引擎,GitLab 以 Ruby 寫成並隨產品附帶這個引擎。今次修補的內容之一,正是為 Ruby 3.3、3.4 及 4.0 加入「regexp repeat ID overflow」修正。GitLab 同時為自行架設的用戶提供兩條偵測規則,名為「Onigmo native worker crash」及「Org mode render error burst」,用來找出入侵嘗試。

攻擊門檻有多高

保安公司 Rapid7 10 月 13 日分析上一個漏洞時,在官方 GitLab 19.4.1 社區版映像上重現了完整攻擊。它發現攻擊者要先在一個公開專案提交惡意的 CI/CD 設定檔(.gitlab-ci.yml),然後才能觸發漏洞;如果伺服器容許任何人自行註冊並開設專案,這個門檻就形同不存在。

據 Rapid7 描述,惡意的正規表示式起初以精簡的 ASCII 格式通過 GitLab 的檢查,但在比對含 UTF-8 字元的路徑時,Onigmo 會重新編譯,溢位就在這一步發生,最終令攻擊者能以 GitLab 的 git 系統帳戶身份執行指令。Rapid7 當時表示,未有確認的真實攻擊個案。

在未能即時升級前,Rapid7 建議限制匿名用戶存取公開專案,以及禁止不受信任的用戶開設或寫入公開專案。不過它強調,這些措施只堵住已知的攻擊途徑,並未修正有問題的編譯器,要根治仍須升級。

來源

暫時未有留言

提交留言即表示你已閱讀我們的私隱政策。