CVE-2026-92091
ŚrednieCVSS 5.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 41 - wyżej niż 41% wszystkich znanych CVE
Streszczenie
W bibliotece jwcrypto funkcja JWK.import_key() waliduje członka key_ops JWK pod kątem zduplikowanych wartości przy użyciu algorytmu o złożoności czasowej O(n^2), a długość key_ops nie jest ograniczona. Zdalny, nieuwierzytelniony atakujący może dostarczyć JWK z dużą tablicą key_ops do aplikacji, która przekazuje kontrolowane przez atakującego materiały klucza do publicznego API importu klucza (osiągalnego m.in. przez uzgadnianie klucza ECDH-ES, dynamiczną rejestrację klienta OIDC, DPoP lub rejestrację klucza konta ACME), co powoduje nadmierne zużycie CPU i prowadzi do odmowy usługi.
Ocena ryzyka
Ryzyko polega na możliwości przeprowadzenia ataku DoS na aplikacje używające jwcrypto, co może prowadzić do niedostępności usług dla użytkowników.
Rekomendacja
Zaleca się aktualizację biblioteki jwcrypto do wersji zawierającej poprawkę oraz ograniczenie długości tablicy key_ops w przetwarzanych kluczach.
Inne podatności w jwcrypto
Zobacz wszystkie- CVE-2026-84185Średnie
W bibliotece jwcrypto, używanej do implementacji standardów JOSE, występuje błąd polegający na tym, że podczas weryfikacji General JSON Serialization JWS z zestawem kluczy, biblioteka nieprawidłowo identyfikuje konkretny identyfikator klucza (kid) i może zaakceptować podpis wykonany dowolnym ważnym kluczem z zestawu. Pozwala to atakującemu posiadającemu ważny klucz na ominięcie kontroli autoryzacji w aplikacjach, które polegają na identyfikatorze klucza do rozróżniania dzierżawców lub użytkowników.
- CVE-2026-80179Średnie
Podatność w jwcrypto pozwala zdalnemu atakującemu na wysłanie specjalnie spreparowanego tokena JSON Web Encryption (JWE) zawierającego wiele separatorów kropek. Ten nieprawidłowy token może zmusić funkcję JWE.deserialize() do przydzielenia nadmiernej ilości pamięci, co prowadzi do błędu MemoryError. Problem skutkuje odmową usługi (DoS) dla usług przetwarzających niezaufane wartości JWE.
- CVE-2026-39373Średnie
JWCrypto przed wersją 1.5.7 nie sprawdza rozmiaru zdekompresowanych danych w tokenach JWE z kompresją ZIP. Atakujący może wysłać mały token (poniżej 250KB), który po dekompresji zajmuje około 100MB, powodując wyczerpanie pamięci serwera.
Oryginalny opis (angielski, źródło NVD)
A flaw was found in jwcrypto. The JWK.import_key() function validates the key_ops JWK member for duplicate values using an algorithm with O(n^2) time complexity, and the length of key_ops is not bounded. A remote, unauthenticated attacker can supply a JWK with a large key_ops array to an application that passes attacker-controlled key material to a public key-import API (reachable via ECDH-ES key agreement, OIDC dynamic client registration, DPoP, or ACME account key registration, among others) to consume excessive CPU time, resulting in a denial of service.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

