談到自建Git程式碼版本管理系統,除了GitHub與GitLab,許多開發團隊採用主打輕量化的Gogs,近日資安公司Rapid7表示,兩個月前他們向Gogs開發團隊通報的重大漏洞,迄今尚未修補,並警告一旦攻擊者成功利用此漏洞,就可能入侵伺服器、跨租戶竊取資料與身分憑證、橫向移動,甚至發動供應鏈攻擊。
資安公司Rapid7發布部落格文章提出警告,這個被歸類為參數注入(argument injection)漏洞,Rapid7是在3月下旬找到,通過身分驗證的攻擊者,可藉此在合併前重設程式碼基礎(Rebase before merging)的操作流程中,建立具有惡意分支(branch)名稱的拉取請求,之後就有機會遠端執行任意程式碼(RCE),無須事先取得管理員權限,利用漏洞的過程也不需與使用者互動,甚至能完全自動化執行,CVSS v4.0評分達到9.4(滿分10分),該弱點目前尚未登記CVE編號。由於Gogs開發團隊尚未進行修補,他們呼籲用戶應採取行動因應,包括:限制用戶註冊與建立儲存庫,以及審核合併及重設程式碼基礎的組態設定。
關於漏洞的影響範圍,Rapid7指出,無論在Windows、macOS、Linux作業系統上建置,以及採用預先組建二進位檔、Docker或用原始碼等安裝方式的Gog,都無法例外;而在Gog的版本上,他們驗證0.14.2版與0.15.0+dev都存在相同的資安風險——他們在Ubuntu 24.04架設Docker環境,並建置最新的0.14.2版Gogs成功驗證此漏洞,並發現測試版本0.15.0+dev也存在相同的資安風險。