Błąd parsowania nagłówka Host w serwerze proxy LiteLLM umożliwia nieuwierzytelnionemu atakującemu ominięcie warstwy autoryzacji i uzyskanie dostępu do chronionych tras zarządzania. Podatność jest krytyczna, ponieważ nie wymaga żadnych uprawnień ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
LiteLLM is a proxy server (AI Gateway) to call LLM APIs in OpenAI (or native) format. Prior to 1.84.0, a Host-header parsing flaw in the LiteLLM proxy could, under specific conditions, allow unauthenticated access to protected management routes. The auth layer derived the effective route from request.url.path in litellm/proxy/auth/auth_utils.py::get_request_route(), which Starlette reconstructs from the Host header. A crafted Host could therefore make the auth gate evaluate a different route from the one FastAPI dispatched. This vulnerability is fixed in 1.84.0.
Warstwa uwierzytelnienia wyznaczała efektywną trasę żądania na podstawie pola request.url.path w module litellm/proxy/auth/auth_utils.py (funkcja get_request_route()), które Starlette rekonstruuje z nagłówka Host. Atakujący może spreparować nagłówek Host w taki sposób, aby mechanizm autoryzacji oceniał inną trasę niż ta faktycznie obsługiwana przez FastAPI. Powoduje to rozbieżność między trasą widzianą przez auth gate a trasą faktycznie wywołaną, co pozwala ominąć kontrolę dostępu do chronionych endpointów zarządzania (CWE-290 — Authentication Bypass by Spoofing).
Nieuwierzytelniony atakujący może uzyskać dostęp do chronionych tras administracyjnych proxy LiteLLM, co może prowadzić do przejęcia kontroli nad bramą AI, modyfikacji konfiguracji lub ujawnienia wrażliwych danych.
Należy zaktualizować LiteLLM do wersji 1.84.0 lub nowszej, w której podatność została naprawiona. Patch dostępny w repozytorium GitHub BerriAI/litellm (tag v1.84.0).
LiteLLM (produkt firmy BerriAI) w wersjach wcześniejszych niż 1.84.0
Podatność wymaga spełnienia specyficznych warunków (AT:P w wektorze CVSS), co oznacza, że eksploitacja jest możliwa jedynie w określonych konfiguracjach środowiskowych. Szczegóły techniczne dostępne w GitHub Security Advisory GHSA-4xpc-pv4p-pm3w.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XLitellm
APPLitellm< 1.84.0
Powiązane podatności
SQL Injection w LiteLLM umożliwia nieautoryzowany dostęp do bazy danych
Atak supply chain na Trivy — złośliwe tagi GitHub Actions i obraz kontenera
LiteLLM: pominięcie uwierzytelnienia JWT przez kolizję klucza cache (Auth Bypass)
RCE w BerriAI/litellm poprzez endpoint /config/update
BerriAI LiteLLM – SSTI via Jinja umożliwia RCE przez endpoint /completions