Katalog CVE

CVE-2018-20406

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

Prawdopodobieństwo exploitacji (EPSS)

Bardzo wysokie ryzyko
5.79%

Percentyl 93 - wyżej niż 93% wszystkich znanych CVE

Streszczenie

Podatność w module _pickle.c w Pythonie przed wersją 3.7.1 polega na przepełnieniu liczby całkowitej przy dużej wartości LONG_BINPUT, błędnie obsługiwanej podczas próby podwojenia rozmiaru. Może to prowadzić do wyczerpania pamięci, ale tylko w przypadku serializacji dziesiątek lub setek gigabajtów danych w formacie pickle.

Ocena ryzyka

W praktyce ryzyko jest niskie i dotyczy wyłącznie aplikacji przetwarzających ekstremalnie duże ilości danych w formacie pickle. Może jednak doprowadzić do wyczerpania pamięci i odmowy usługi.

Rekomendacja

Należy zaktualizować Pythona do wersji 3.7.1 lub nowszej (lub odpowiedniej wersji z gałęzi 3.4, 3.5, 3.6). Zaleca się również unikanie deserializacji niezaufanych danych pickle oraz ograniczenie rozmiaru przetwarzanych danych.

Inne podatności w Python

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Modules/_pickle.c in Python before 3.7.1 has an integer overflow via a large LONG_BINPUT value that is mishandled during a "resize to twice the size" attempt. This issue might cause memory exhaustion, but is only relevant if the pickle format is used for serializing tens or hundreds of gigabytes of data. This issue is fixed in: v3.4.10, v3.4.10rc1; v3.5.10, v3.5.10rc1, v3.5.7, v3.5.7rc1, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.7, v3.6.7rc1, v3.6.7rc2, v3.6.8, v3.6.8rc1, v3.6.9, v3.6.9rc1; v3.7.1, v3.7.1rc1, v3.7.1rc2, v3.7.2, v3.7.2rc1, v3.7.3, v3.7.3rc1, v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

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