觀點 · 資訊分享

Gitea 28.3.0 一次修 21 個 CVE:「只限公開」的存取權杖破功,自架 Git 的人該升級了

自架 Git 服務 Gitea 在 11 月 1 日發布 28.3.0,一口氣修補 21 個 CVE,大多和存取權杖的權限範圍有關,其中幾個能刪光組織的儲存庫、讓工作流程偷跑拿到 secrets。官方建議所有人盡快升級。

發布
2026-11-01
篇幅
約 4 分鐘 · 1,830 字
結構
7 節 + 3 題常見問題
標籤
#Gitea#CVE#自架服務#Gitea Actions#存取權杖
Gitea 28.3.0 一次修 21 個 CVE:「只限公開」的存取權杖破功,自架 Git 的人該升級了

一句話看懂:自架 Git 服務 Gitea 發布 28.3.0,一次修補 21 個 CVE,多半是存取權杖的權限範圍沒擋好,所有自架的人都該升級。

Gitea 28.3.0 修補 21 個 CVE資訊圖卡:大多是存取權杖「權限範圍沒擋好」,所有自架 Gitea 都該升級

先用白話講:Gitea 和「只限公開的權杖」是什麼?

Gitea 是可以自己架的 Git 服務,功能類似 GitHub,很多人把它裝在 NAS 或小主機上放公司或個人的程式碼。

存取權杖(access token) 就像一張給程式用的通行證,讓腳本、CI 工具不用帳密也能操作 Gitea。建立通行證時可以勾「只限公開資源」(public-only),意思是:就算這張通行證被人撿走,也只能看公開的東西。

這次的問題就是,這張「只能進大廳」的通行證,其實有很多側門沒檢查,拿著它也能走進會議室。

發生什麼事

Gitea 在 11 月 1 日發布 28.3.0,這是 28 系列的第三個維護版本,官方公告列出 21 個 CVE,並寫明強烈建議所有使用者盡快升級。同一天 NVD 也公開了這批 CVE,受影響範圍標為 28.3.0 以前的版本。

比較需要注意的幾個:

  • 刪光組織儲存庫:組織擁有者的「只限公開」權杖,可以呼叫刪除 API,把組織內所有儲存庫連私有的一起刪掉(CVE-2026-119441)
  • 管理 API 沒擋:管理員的「只限公開」權杖能列出所有使用者的 email、甚至新增管理員(CVE-2026-117635)
  • 工作流程偷跑:只有讀取權限的人送出特製的 PR 審查,就能讓工作流程不經核准執行,還帶著儲存庫的 secrets 和可寫入的權杖(CVE-2026-118386)
  • Actions 權杖看太多:工作裡的 GITEA_TOKEN 能列出整台站台所有私有儲存庫的名稱與資訊,但內容本身仍有權限保護(CVE-2026-112887)
  • 不用密碼登入別人帳號:設成 ACCOUNT_LINKING = auto(非預設)又開放註冊時,用外部帳號登入的人可以填入別人的帳號名稱並直接登入(CVE-2026-120263)

其他還有 Actions 產物可被做成會執行腳本的網頁(儲存型 XSS)、Helm 套件上傳可以用高壓縮檔拖垮伺服器等問題。

會影響誰

你的狀況 風險
有開放註冊、多人共用 高,帳號連結與權杖問題都可能被利用
有用 Gitea Actions 跑 CI 高,secrets 可能外流
只有自己用、沒對外 較低,但仍建議升級

給開發者的技術細節

  • 版本:升到 28.3.0;這版共合併 60 個修正
  • 官方執行檔改用 Go 1.27.3 建置,不再信任一批有疑慮的中繼憑證,影響 OAuth2、Webhook、鏡像等對外連線;如果升級後某個對外連線出現憑證錯誤,可能跟這個有關
  • 審查觸發的工作流程(pull_request_review)改成以 PR 本身的分支為準
  • 使用者個人頁現在把帶權杖的請求當成匿名訪客;使用者與組織的 RSS 動態需要 read:user 或 read:organization 範圍
  • 升級後建議撤銷不再使用的權杖,尤其是管理員與組織擁有者發過的

我的看法

自架 Gitea 的人,很多是把它丟在 NAS 上就沒再管,版本可能停在好幾個月前。這次的漏洞大多需要對方先有帳號或權杖,單人使用的站台風險相對低,但只要有開放註冊、讓客戶或外包夥伴進來,或有用 Actions 放部署金鑰,就真的該排時間升級。

我也會趁這次把權杖清一輪:不用的直接撤銷,CI 用的權杖只給最小範圍。「只限公開」這種限制本來是最後一道防線,這次證明它不一定可靠,別把安全全押在它身上。

名詞小辭典

  • CVE:漏洞的國際編號,方便大家指稱同一個問題。
  • 存取權杖(Access Token):給程式用的通行證,可以設定能做哪些事。
  • Gitea Actions:Gitea 內建的自動化流程,類似 GitHub Actions,用來跑測試、部署。
  • Secrets:存在 CI 裡的機密設定,例如部署用的金鑰與密碼。

資料來源

常見問題

我自己一個人在 NAS 上用 Gitea,也需要升級嗎?
建議要。雖然很多漏洞需要對方先有帳號或權杖,但這次還包含 Helm 套件上傳可以塞爆伺服器、Actions 產物可被做成網頁攻擊等問題,加上官方明講建議所有人升級,升到 28.3.0 是最省事的做法。
「只限公開」的權杖是什麼?
建立個人存取權杖時可以勾選只碰公開資源,本來的用意是就算權杖外流,對方也看不到私有內容。這次發現很多 API 路徑沒有檢查這個限制,所以等於限制失效。
升級之後還要做什麼?
建議檢查並撤銷不再使用的權杖,特別是管理員或組織擁有者發過的;有開放註冊又設定 ACCOUNT_LINKING = auto 的站台,順便確認近期有沒有不明的外部帳號連結。
LINE