CVE-2026-48710
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 78 - wyżej niż 78% wszystkich znanych CVE
Streszczenie
Starlette to lekki framework ASGI. Przed wersją 1.0.1 nagłówek HTTP Host nie był walidowany przed użyciem do rekonstrukcji request.url. Ponieważ algorytm routingu opiera się na surowej ścieżce HTTP, a request.url jest odtwarzany z nagłówka Host, zniekształcony nagłówek może spowodować, że request.url.path będzie różnić się od faktycznie żądanej ścieżki. Middleware i punkty końcowe stosujące ograniczenia bezpieczeństwa oparte na request.url (zamiast surowej ścieżki scope) mogą zostać ominięte.
Ocena ryzyka
Atakujący może ominąć zabezpieczenia oparte na request.url, co może prowadzić do nieautoryzowanego dostępu do zasobów lub funkcji aplikacji.
Rekomendacja
Należy zaktualizować Starlette do wersji 1.0.1 lub nowszej, która waliduje nagłówek Host zgodnie z RFC 9112 §3.2 / RFC 3986 §3.2.2.
Inne podatności w Starlette
Zobacz wszystkie- CVE-2026-48818Wysokie
Podatność w Starlette 1.0.1 i wcześniejszych na Windows umożliwia atak SSRF przez ścieżkę UNC. Gdy serwer próbuje sprawdzić ścieżkę, wysyła żądanie SMB do atakującego, ujawniając poświadczenia NTLMv2. Problem dotyczy domyślnej konfiguracji follow_symlink=False, w tym frameworków opartych na Starlette jak FastAPI.
- CVE-2023-30798Wysokie
Podatność w frameworku Starlette przed wersją 0.25.0 umożliwia nieuwierzytelnionemu atakującemu zdalnemu wysłanie dowolnej liczby pól formularza lub plików, co prowadzi do nadmiernego zużycia pamięci i odmowy usługi (DoS) serwisu HTTP.
Oryginalny opis (angielski, źródło NVD)
Starlette is a lightweight ASGI framework/toolkit. Prior to version 1.0.1, the HTTP `Host` request header was not validated before being used to reconstruct `request.url`. Because the routing algorithm relies on the raw HTTP path while `request.url` is rebuilt from the `Host` header, a malformed header could make `request.url.path` differ from the path that was actually requested. Middleware and endpoints that apply security restrictions based on `request.url` (rather than the raw `scope` path) could therefore be bypassed. Users should upgrade to a version greater than or equal to version 1.0.1, which validates the `Host` header against the grammar of RFC 9112 §3.2 / RFC 3986 §3.2.2 when constructing `request.url` and falls back to `scope["server"]` for malformed values.

