CVE-2026-119284
ŚrednieCVSS 6.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
joserfc to biblioteka Pythona implementująca standardy JOSE. Przed wersją 1.7.6 deserializacja kompaktowego JWS wywołuje bytes.split() przed egzekwowaniem istniejących limitów rozmiaru segmentów. Gdy kontrolowane przez atakującego bajty trafiają do deserialize_compact(), split tworzy kopie nagłówka, ładunku i podpisu przed odrzuceniem przez ExceededSizeError, powodując dodatkową alokację proporcjonalną do dostarczonego tokenu.
Ocena ryzyka
Żądania wyczerpujące dostępną pamięć procesu mogą spowodować awarię dostępności, nawet jeśli weryfikacja podpisu się nie powiedzie, umożliwiając atakującemu przeprowadzenie ataku typu denial of service.
Rekomendacja
Zaktualizuj joserfc do wersji 1.7.6 lub nowszej oraz rozważ ograniczenie rozmiaru przychodzących tokenów na poziomie aplikacji lub proxy.
Inne podatności w joserfc
Zobacz wszystkie- CVE-2026-102946Krytyczne
joserfc to biblioteka Pythona implementująca kilka standardów JSON Object Signing and Encryption (JOSE). Przed wersją 1.7.4 joserfc.jws.deserialize_json() akceptuje JWS General JSON Serialization z pustą tablicą signatures jako uwierzytelnione. Pętla verify_general_json() nie wykonuje żadnych iteracji dla pustej tablicy i zwraca sukces, ponieważ żadna weryfikacja podpisu nie zawiodła, co pozwala atakującemu bez klucza podpisującego dostarczyć dowolny ładunek, który aplikacje mogą uznać za autentyczny. Problem dotyczy ścieżki General JSON Serialization; kompaktowe dekodowanie JWS i JWT, Flattened JSON serialization oraz przetwarzanie JWE JSON nie podążają tą podatną ścieżką. Problem naprawiono w wersji 1.7.4.
- CVE-2026-119283Wysokie
W bibliotece joserfc przed wersją 1.7.5 funkcja joserfc.jwe.decrypt_json() przyjmuje tablicę recipients w formacie JWE General JSON Serialization bez limitu liczby elementów i wywołuje decrypt_cek() dla każdego wpisu. Nieuwierzytelniony atakujący może kontrolować liczbę operacji odszyfrowania kluczem prywatnym wykonywanych w jednym żądaniu.
- CVE-2026-75509Średnie
joserfc, biblioteka Pythona implementująca standardy JOSE, przed wersją 1.7.3 zawiera podatność w JWTClaimsRegistry, która stosuje dopasowanie członkostwa do listowych wartości iss i sub. Pozwala to na pominięcie walidacji wydawcy, gdy iss jest tablicą zawierającą oczekiwanego wydawcę.
- CVE-2026-62995Niskie
Biblioteka Python joserfc w wersjach 1.7.1 i wcześniejszych akceptuje tokeny JWT z końcowym dopełnieniem (==), co jest niezgodne ze specyfikacją JOSE. Powoduje to podatność na modyfikację tokenów, co może prowadzić do obejścia mechanizmów unieważniania tokenów lub ochrony przed powtórnym użyciem.
- CVE-2026-49852Wysokie
Podatność w bibliotece joserfc dla Pythona przed wersją 1.6.8 umożliwia atakującemu podrobienie tokenów HMAC, gdy klucz weryfikacyjny jest pustym ciągiem lub None. Biblioteka nie odrzuca zerowej długości klucza, co pozwala na ominięcie weryfikacji podpisu.
- CVE-2026-48990Średnie
Biblioteka joserfc w wersjach od 1.3.4 do 1.6.5 akceptuje zbyt duże ładunki JWS bez odpowiedniego sprawdzenia ich długości, co może prowadzić do wyczerpania zasobów. Problem ten został naprawiony w wersji 1.6.7.
- CVE-2025-65015Wysokie
W bibliotece joserfc w wersjach od 1.3.3 do przed 1.3.5 oraz od 1.4.0 do przed 1.4.2 komunikaty wyjątku ExceededSizeError zawierają nieodkodowane części tokenu JWT, co może powodować zapisanie w logach Pythona dowolnie dużego, sfałszowanego ładunku JWT. Podatność naprawiono w wersjach 1.3.5 i 1.4.2.
Oryginalny opis (angielski, źródło NVD)
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.6, joserfc compact JWS deserialization calls bytes.split() before enforcing the existing aggregate segment-size limits. When attacker-controlled compact serialization bytes reach deserialize_compact(), the split creates copies of the header, payload, and signature segments before ExceededSizeError rejects them, causing an additional allocation approximately proportional to the supplied token. Requests that exhaust available process memory can therefore cause an availability failure even though signature verification fails. This issue is fixed in version 1.7.6.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

