CVE-2026-102946
KrytyczneCVSS 9.1Streszczenie
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.
Ocena ryzyka
Atakujący bez klucza podpisującego może dostarczyć dowolny ładunek jako autentyczny, co może prowadzić do fałszowania danych i obejścia kontroli bezpieczeństwa w aplikacjach używających joserfc.
Rekomendacja
Zaktualizuj bibliotekę joserfc do wersji 1.7.4 lub nowszej oraz przejrzyj aplikacje korzystające z JWS General JSON Serialization pod kątem nieautoryzowanych ładunków.
Inne podatności w joserfc
Zobacz wszystkie- 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.
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.4, joserfc.jws.deserialize_json() accepts a JWS General JSON Serialization with an empty signatures array as authenticated. The verify_general_json() loop performs no iterations for the empty array and returns success because no signature check failed, allowing an attacker without a signing key to supply an arbitrary payload that relying applications may treat as authentic. The issue affects the General JSON Serialization path; compact JWS and JWT decoding, Flattened JSON serialization, and JWE JSON processing do not follow this vulnerable path. This issue is fixed in version 1.7.4.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

