Gitea Docker 漏洞已有人掃,自架 Git server 要即升級
Tech News

Gitea Docker 漏洞已有人掃,自架 Git server 要即升級

圖片:via iThome — https://www.ithome.com.tw/news/177163
TechLab 編輯部(譯)·

受影響主要係舊版 Docker image 同反向代理登入設定

件事唔係普通登入 bug

iThome 報道,Sysdig 偵測到有人開始掃 Gitea 嘅 CVE-2026-20896,時間係 Gitea 團隊 6 月 21 日公開修補後唔夠兩星期。呢個洞分數高到 9.8,原因唔複雜:喺某啲 Docker 部署入面,只要 Gitea 信錯一個反向代理身份 header,外面嘅人就有機會扮成已存在嘅用戶。呢度唔係密碼撞庫,亦唔係偷 token,係身份來源本身俾錯咗信任。

Gitea 官方產品頁展示嘅 server 介面截圖

圖片:Gitea

邊啲 Gitea 要即刻處理

官方 GitHub advisory 寫得幾清楚,受影響係 gitea/gitea Docker image 1.26.2 或更舊版本;binary 版或者自己 build、又跟 app.example.ini 走 loopback-only 預設嘅安裝,官方話唔屬於呢個 Docker 預設問題。真正危險嘅組合係:用 Docker、開咗 ENABLE_REVERSE_PROXY_AUTHENTICATIONREVERSE_PROXY_TRUSTED_PROXIES 實際上信晒所有來源,兼且容器嘅 HTTP port 直接或者間接俾公網掂到。

點解 Docker 特別跣手

自架 Git server 好多時係 docker compose 一拉就跑,尤其細 team、agency、學校 lab,未必有人定期返轉頭審 app.ini。反向代理登入本身冇錯,問題係你以為只有 Nginx、Caddy 或 SSO gateway 可以塞身份 header 入去,但 Docker image 舊預設等於話邊個 source IP 都可信。呢個 insight 好重要:漏洞唔一定係核心程式碼寫錯,有時係包裝出街嗰層預設值,同文件講嘅安全假設唔一致。

source code 泄咗唔止係 IT 事故

Gitea 管住嘅唔止 repo,仲可能有 issue、release artifact、package registry、CI/CD 設定、部署 script,同 developer 習慣放錯位嘅 secret。攻擊者如果扮到 admin 或 senior dev,風險可以由偷睇 private repo,一路升到改 code、加 token、摸清內部系統名,再等下一次 build 或 deploy 幫佢送入供應鏈。呢點對本地中小企同外判開發隊特別實際,因為好多 server 係「得閒先 maintain」。

而家要做乜

處理次序好直接:先升級,官方 1.26.3 已修 CVE-2026-20896,但 Gitea 自己建議直接去 1.26.4,因為 1.26.3 之後仲補咗 code page regression 同另一個 OAuth2 相關資安修正。跟住查 app.ini 同環境變數,確認反向代理登入係咪真係要開;要開嘅話,就將 trusted proxies 收窄到你控制嘅 proxy IP 或 loopback,唔好留 * 呢種闊到冇意思嘅設定。

升完仲要睇返 log

升級唔等於完事。The Hacker News 引述 Sysdig 話,第一次真實環境嘗試喺公開後第 13 日已出現,而 iThome 亦提到全球約 6,200 部 Gitea server 可由網上掂到;呢個數唔代表全部中招,但足夠提醒 admin 檢查 access log 有冇可疑身份 header、陌生 IP、突然新增嘅 user、token、webhook、deploy key 同異常 repo clone。自架 Git 可以自己揸住資料,但 patch 同檢查 log 都要自己跟足。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook