CVE-2025-62706
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
Authlib to biblioteka Pythona do budowy serwerów OAuth i OpenID Connect. W wersjach przed 1.6.5 ścieżka JWE zip=DEF wykonuje nieograniczoną dekompresję DEFLATE, co pozwala atakującemu na wyczerpanie pamięci i CPU oraz spowodowanie odmowy usługi.
Ocena ryzyka
Atakujący mogący dostarczyć odszyfrowywalne tokeny może wyczerpać zasoby serwera, powodując odmowę usługi dla aplikacji korzystających z Authlib.
Rekomendacja
Zaktualizuj Authlib do wersji 1.6.5 lub nowszej. Jako obejście odrzucaj lub usuwaj zip=DEF w przychodzących JWE oraz stosuj limity rozmiaru tokenów i ograniczenia szybkości.
Inne podatności w Authlib
Zobacz wszystkie- CVE-2026-104056Krytyczne
Authlib w wersji 1.7.2 i niższych zawiera podatność, w której metadane JSON discovery są buforowane bez walidacji lub powiązania z originem issuera. Pozwala to zatrutemu discovery response na zastąpienie wszystkich wartości endpointów wartościami kontrolowanymi przez atakującego, zamiast URL endpointów współdzielących origin ze skonfigurowanym URL metadanych serwera.
- CVE-2026-96760Krytyczne
Biblioteka Authlib w wersji v1.7.2 i wcześniejszych zawiera podatność polegającą na obejściu weryfikacji podpisu. Metoda JsonWebSignature.deserialize_json() akceptuje obiekt JWS w formacie JSON Serialization i zwraca ładunek jako pomyślnie zweryfikowany bez sprawdzania podpisu i bez wymagania klucza kryptograficznego.
- CVE-2026-27962Krytyczne
Podatność w bibliotece Authlib (wersje przed 1.6.9) umożliwia atakującemu wstrzyknięcie klucza JWK do nagłówka JWT. Pozwala to na podrobienie dowolnego tokena JWT, który przechodzi weryfikację podpisu, ponieważ biblioteka używa klucza dostarczonego przez atakującego zamiast zaufanego klucza serwera.
- CVE-2026-28802Krytyczne
Biblioteka Authlib w wersjach od 1.6.5 do 1.6.6 nieprawidłowo przepuszczała złośliwe tokeny JWT z algorytmem 'none' i pustym podpisem, co omijało weryfikację podpisu. Problem został naprawiony w wersji 1.6.7.
- CVE-2026-116672Wysokie
Authlib (biblioteka Python do OAuth/OIDC) w wersjach od 0.15 do 1.9.1 zawiera błąd w implementacjach ClientConfigurationEndpoint.authenticate_client i check_permission, które nie weryfikują, czy poświadczenie należy do docelowego klienta. Może to pozwolić na odczyt, modyfikację lub usunięcie rejestracji innego klienta. Problem naprawiono w wersji 1.9.1.
- CVE-2026-114620Średnie
W bibliotece Authlib przed wersją 1.9.0 implementacja RFC 9101 JWTAuthenticationRequest przekazuje kontrolowany przez klienta parametr request_uri do hooka get_request_object() przed zastosowaniem polityki docelowej lub rejestracyjnej. W instalacjach, w których integrator zaimplementował ten hook jako nieograniczone pobieranie HTTP, zdalny atakujący może wymusić żądania do wewnętrznych lub niepożądanych adresów URL.
- CVE-2026-114619Średnie
W Authlib przed wersją 1.9.0 metoda OpenIDImplicitGrant.validate_authorization_request() sprawdza kontrolowany przez klienta surowy parametr request.payload.scope pod kątem openid po tym, jak nadrzędny grant przefiltrował dozwolone zakresy do request.scope. Zarejestrowany klient uprawniony do typu odpowiedzi ID token, ale nie do zakresu openid, może dodać openid i otrzymać podpisany ID token z danymi użytkownika.
- CVE-2026-114618Średnie
W Authlib przed wersją 1.9.0 domyślna metoda RFC 7523 JWTBearerGrant.get_audiences() zwraca pustą listę, przez co weryfikacja roszczeń wymaga jedynie istnienia roszczenia aud bez dopasowania do bieżącego serwera autoryzacji. Atakujący posiadający ważną asercję dla innej usługi może przedstawić ją serwerowi współdzielącemu klucz podpisujący i uzyskać token dostępu.
- CVE-2026-114617Średnie
W Authlib przed wersją 1.9.0 metoda OpenIDMixin.parse_id_token() odczytuje decyzję nonce_supported z nieufnego ID tokena i ustawia oczekiwane nonce na null, gdy roszczenie ma wartość logiczną false. W klientach implicit i hybrid atakujący z przechwyconym prawidłowo podpisanym tokenem może ominąć powiązanie nonce z sesją i odtworzyć token ofiary w swojej sesji.
- CVE-2026-114616Wysokie
Authlib to biblioteka Pythona do budowy serwerów OAuth i OpenID Connect. W wersjach przed 1.9.1 funkcje OctKey.import_key() oraz ścieżka podpisywania i weryfikacji HMAC akceptują klucz o zerowej długości, co pozwala zdalnemu atakującemu obliczyć deterministyczny podpis HS256, HS384 lub HS512 dla dowolnych roszczeń tokenu i uznać token za autentyczny. Problem naprawiono w wersji 1.9.1.
Oryginalny opis (angielski, źródło NVD)
Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.5, Authlib’s JWE zip=DEF path performs unbounded DEFLATE decompression. A very small ciphertext can expand into tens or hundreds of megabytes on decrypt, allowing an attacker who can supply decryptable tokens to exhaust memory and CPU and cause denial of service. This issue has been patched in version 1.6.5. Workarounds for this issue involve rejecting or stripping zip=DEF for inbound JWEs at the application boundary, forking and add a bounded decompression guard via decompressobj().decompress(data, MAX_SIZE)) and returning an error when output exceeds a safe limit, or enforcing strict maximum token sizes and fail fast on oversized inputs; combine with rate limiting.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

