Katalog CVE

CVE-2026-59886

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.34%

Percentyl 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
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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS