觀點 · 資訊分享

LiteLLM 代理被爆 Host 標頭繞過驗證:多數部署有前置防護不受影響,建議升到 1.84.0

LiteLLM 公布 CVE-2026-49468:特製的 Host 標頭可能讓驗證層誤判路徑,在特定條件下繞過驗證存取管理路由。官方說多數部署不受影響,並建議升到 1.84.0。

發布
2026-06-17
篇幅
約 3 分鐘 · 1,440 字
結構
7 節 + 3 題常見問題
標籤
#LiteLLM#CVE-2026-49468#認證繞過#LLM 代理
LiteLLM 代理被爆 Host 標頭繞過驗證:多數部署有前置防護不受影響,建議升到 1.84.0

一句話看懂:LiteLLM 代理有個靠特製 Host 標頭繞過驗證的漏洞,官方說多數有前置防護的部署不受影響,但仍建議升到 1.84.0。

LiteLLM Host 標頭繞過驗證資訊圖卡:特製 Host 讓驗證層看錯路由,但多數有前置防護的部署不受影響

先用白話講:這個漏洞是什麼?

想像大樓櫃台有兩個人:一位負責「查證件」,另一位負責「帶你去哪一層樓」。正常情況下,兩個人聽到的是同一個目的地。但如果訪客用一種特別的說法,讓查證件的人聽成「去一樓大廳」,帶路的人卻聽成「去頂樓辦公室」,就能繞過檢查。

LiteLLM 的情況很像:驗證層判斷的「你要存取哪個路由」,和實際被分派的路由,可能被一個特製的 Host 標頭搞得不一致。

發生什麼事

  • 漏洞編號 CVE-2026-49468,GitHub 公告發布於 2026 年 6 月 16 日,標示為嚴重,CVSS 9.8
  • 成因:驗證層在 get_request_route() 依 request.url.path 取得路由,而 Starlette 會依 Host 標頭重組這個值;特製的 Host 可能讓驗證閘道看到的路由,與 FastAPI 實際分派的路由不同
  • 影響:特定條件下,可能在未驗證的情況下存取受保護的管理路由
  • 修補:1.84.0,不需要更改設定

誰比較危險?

官方強調多數部署不受影響。只要代理前面有下列任何一種會驗證或標準化 Host 的元件,這個繞過就會被擋下:

  • CDN 或 WAF(例如 Cloudflare)
  • 設定了 server_name 白名單的反向代理
  • 依主機名稱路由的負載平衡器

官方也說 LiteLLM 雲端客戶不受影響。風險比較高的是:自架、直接把 LiteLLM 開在網際網路上、前面什麼檢查都沒有的情況。

給開發者的技術細節

  • 受影響版本:1.84.0 之前;修補版:1.84.0(官方 release 為 v1.84.0)
  • 不能馬上升級時,官方的建議是把代理放在會驗證或標準化 Host 標頭的元件後面
  • 排查建議(我的整理,不是官方清單):確認自己的 LiteLLM 是否直接對外、前面的反向代理是否限制了允許的 Host 名稱
  • 後續日期:NVD 在 2026 年 6 月 22 日才收錄這個 CVE,但 GitHub 公告早在 6 月 16 日就已發布

我的看法

自架 LiteLLM 或類似的 AI 閘道,很多人是「先跑起來再說」,反向代理設定也常常複製貼上。這次的漏洞提醒我:Host 標頭看起來很不起眼,卻可能是驗證邏輯的一環。

好消息是,只要前面有一層正常設定的反向代理,風險就低很多。我自己的習慣是:任何對外的服務,前面一定先放一層只允許自己網域的反向代理,再把內部管理路由限制在內網。這次剛好驗證了這個習慣是對的。當然,最直接的處理仍然是升到 1.84.0。

名詞小辭典

  • Host 標頭:HTTP 請求裡標明「你要找哪個網站」的欄位。
  • 反向代理:站在伺服器前面接客的服務,可以先檢查、轉發請求。
  • 認證繞過:不用正確的登入資訊,就通過驗證存取受保護的功能。
  • LLM 閘道:集中管理各家 AI 模型呼叫的中間服務,處理金鑰、用量與權限。

資料來源

常見問題

LiteLLM 是什麼?
一個開源的 LLM 代理(Gateway),讓你用統一的 OpenAI 相容介面呼叫各家模型,並管理金鑰、用量與權限。很多團隊會自己架一台。
什麼樣的部署有風險?
官方說明的情況是:LiteLLM 代理前面沒有任何會驗證或標準化 Host 標頭的元件,直接對外提供服務。有 CDN、WAF(例如 Cloudflare)、設定了 server_name 白名單的反向代理,或依主機名稱路由的負載平衡器,都能擋下。
這個 CVE 的後續?
GitHub 公告發布於 2026-06-16;NVD 在 2026-06-22 才收錄同一個 CVE。這是後續日期,漏洞本身在 6 月 16 日就已經公開。
LINE