CVE-2026-59886
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 26 - wyżej niż 26% wszystkich znanych CVE
Streszczenie
W bibliotece pyasn1 w wersji przed 0.6.4 typ univ.Real podczas konwersji mantysy, podstawy i wykładnika na liczbę zmiennoprzecinkową Pythona używa dokładnego potęgowania dużych liczb całkowitych. Krótki, zakodowany w BER/CER/DER ciąg REAL może zawierać bardzo duży wykładnik, co powoduje nadmierne zużycie CPU i pamięci oraz zawieszanie aplikacji podczas wywoływania prettyPrint(), str(), porównań, operacji arytmetycznych, int() lub float() na niezaufanych danych ASN.1.
Ocena ryzyka
Atakujący może wysłać specjalnie spreparowaną wartość REAL, która po zdekodowaniu i przetworzeniu (np. wydrukowaniu, logowaniu lub porównaniu) doprowadzi do wyczerpania zasobów systemowych i odmowy usługi (DoS).
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę pyasn1 do wersji 0.6.4 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy unikać wywoływania prettyPrint(), str(), porównań, operacji arytmetycznych, int() lub float() na niezaufanych obiektach typu Real.
Inne podatności w pyasn1
Zobacz wszystkie- CVE-2026-59885Wysokie
Podatność w bibliotece pyasn1 przed wersją 0.6.4 powoduje kwadratową złożoność czasową dekoderów BER, CER i DER podczas przetwarzania identyfikatorów obiektów (OID) i względnych OID z wieloma łukami. Mały, spreparowany ładunek z wieloma łukami OID prowadzi do nadmiernego zużycia CPU przy każdym wywołaniu decode(), co może spowodować odmowę usługi w aplikacjach przetwarzających niezaufane dane ASN.1.
- CVE-2026-59884Wysokie
Biblioteka pyasn1 przed wersją 0.6.4 zawiera podatność w dekoderze BER, który podczas parsowania długich tagów nie ogranicza rozmiaru identyfikatora tagu, co pozwala na skonstruowanie dowolnie dużego integera z kwadratowym wzrostem kosztów CPU oraz wywołanie nieobsłużonych wyjątków ValueError w Python 3.11+.
- CVE-2026-30922Wysokie
Biblioteka pyasn1 przed wersją 0.6.3 jest podatna na atak DoS poprzez niekontrolowaną rekurencję podczas dekodowania głęboko zagnieżdżonych struktur ASN.1. Atakujący może wysłać spreparowane dane z tysiącami zagnieżdżonych znaczników SEQUENCE lub SET z markerami nieokreślonej długości, co powoduje przepełnienie stosu lub pamięci.
- CVE-2026-23490Wysokie
Biblioteka pyasn1 przed wersją 0.6.2 zawiera podatność na atak DoS polegający na wyczerpaniu pamięci przez nieprawidłowo sformułowany RELATIVE-OID z nadmierną liczbą oktetów kontynuacji.
Oryginalny opis (angielski, źródło NVD)
pyasn1 is a generic ASN.1 library for Python. Prior to 0.6.4, the univ.Real type converted its mantissa, base, and exponent value to a Python float using exact big-integer exponentiation. A BER, CER, or DER encoded REAL value only a few bytes long can carry a very large exponent, causing float conversion through prettyPrint(), str(), comparison, arithmetic, int(), or an explicit float() call to consume excessive CPU and memory and hang applications that decode untrusted ASN.1 data and then print, log, or compare decoded objects. This issue is fixed in version 0.6.4.

