觀點 · 資訊分享
Traefik CVE-2026-44774:低權限租戶能繞過 REST 關閉設定(專案 5/11 已公告,5/15 才收錄 CVE)
Traefik 在 5 月 11 日就發布安全公告,5 月 15 日 NVD 才收錄 CVE-2026-44774:在共用 Gateway 的 Kubernetes 環境,能建立 HTTPRoute 的租戶可能繞過 providers.rest.insecure=false,取得 Traefik 動態設定的寫入權。GitHub 公告評為中等。
- 發布
- 2026-05-16
- 篇幅
- 約 4 分鐘 · 1,928 字
- 結構
- 9 節 + 4 題常見問題
- 標籤

一句話看懂:Traefik 的 Kubernetes Gateway API 功能有授權漏洞:在共用 Gateway 的環境,能建立 HTTPRoute 的低權限租戶,可能繞過已關閉的 REST 設定,取得 Traefik 動態設定的寫入權。專案 5 月 11 日已公告,5 月 15 日才有 CVE 編號。

先用白話講:這個漏洞是什麼?
想像一棟共用辦公大樓,每間公司(租戶)只能管自己的門牌。大樓還有一個「總配電室」,平常用鎖鎖起來,鑰匙只給管理員。
這次的問題是:大樓的指示牌系統有個漏洞,租戶只要在自己的門牌上寫一個特定的名字,指示牌就會把訪客導向總配電室的後門,而且完全無視那把鎖。
Traefik 是很常見的反向代理軟體。它有個叫 REST provider 的功能,可以即時改寫路由設定,預設設計是用 providers.rest.insecure=false 來避免被公開。漏洞就是繞過了這個設定。
發生什麼事
- 5 月 11 日:Traefik 專案發布安全公告 GHSA-96qj-4jj5-wcjc,GitHub 把嚴重度評為「中等」
- 5 月 15 日:NVD 收錄 CVE-2026-44774
- 問題:在 Kubernetes Gateway API provider 啟用時,Traefik 接受任何名稱以
@internal結尾的 TraefikService 後端,所以租戶掛上的 HTTPRoute 不只能指到預期的api@internal,還能指到能寫入設定的rest@internal - 後果:低權限的人可以取得即時修改 Traefik 動態設定的權限,進而改寫路由與服務
要符合哪些條件才會中
官方公告列出的前提:
- 啟用了 Kubernetes Gateway API provider
- 啟用了 REST provider,且
providers.rest.insecure=false - 共用的 Gateway 允許租戶命名空間掛載 HTTPRoute
- 攻擊者能在允許的租戶命名空間建立或更新 HTTPRoute
也就是說,這主要是「多租戶、共用 Gateway」的叢集問題;單人使用、沒開這些功能的環境不在公告描述的情境內。
受影響與修正版本
| 版本線 | 受影響 | 修正版 |
|---|---|---|
| 2.x | 2.11.45 以前 | 2.11.46 |
| 3.0 到 3.6 | 3.6.16 以前 | 3.6.17 |
| 3.7 | 3.7.0 | 3.7.1 |
嚴重度怎麼看
GitHub 專案公告的評級是「中等」,NVD 頁面則收錄了不同來源的評分,包含 6.4、8.3 與 9.9。分數落差很大,可能是因為各評分者對「攻擊者權限」與「影響範圍」的假設不同,公告本身沒有說明原因。實務上建議看公告的前提條件,判斷自己的環境符不符合,而不是只看最高分。
給開發者的技術細節
- 漏洞原因是 Gateway provider 把「名稱以 @internal 結尾」的服務都當成內部服務,沒有限制只能指向特定目標
- REST provider 的 insecure 旗標只控制 Traefik 內建的內部路由器要不要建立,不會關掉底層的處理器,所以才會被另一個 provider 繞過去
- 暫時避免的方式官方公告沒有特別列出;實際處理以升級為主,也可以先檢查是否真的需要同時開 REST provider
我的看法
不少人會在 NAS 或小型主機上用 Docker 自架服務,並用 Traefik 當入口。這個漏洞的前提(Kubernetes、Gateway API、多租戶)跟這種單人環境差很多,大多數人不會中。但它提醒了一件事:反向代理是流量的守門員,它的設定權限一旦被繞過,影響的是後面所有服務。
另外一個學到的是 CVE 時程:這則公告 5 月 11 日就公開了,CVE 編號到 5 月 15 日才出現。如果你的漏洞掃描工具只看 CVE 編號,可能會晚幾天才提醒你,所以重要的專案最好直接追蹤它自己的安全公告頁。
名詞小辭典
- 反向代理:站在服務前面,負責把外部請求分配給後面各個服務的軟體。
- Gateway API:Kubernetes 管理流量入口的標準,HTTPRoute 是其中定義路由規則的資源。
- 租戶(Tenant):共用同一個平台、各自管理自己資源的團隊或客戶。
- GHSA:GitHub 安全公告的編號,專案常比 CVE 更早發布。