CVE-2021-3177
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Bardzo wysokie ryzykoPercentyl 98 - wyżej niż 98% wszystkich znanych CVE
Streszczenie
Python 3.x do wersji 3.9.1 zawiera przepełnienie bufora w funkcji PyCArg_repr w _ctypes/callproc.c, co może prowadzić do zdalnego wykonania kodu w niektórych aplikacjach Pythona, które akceptują liczby zmiennoprzecinkowe jako niezaufane dane wejściowe, na przykład argument 1e300 do c_double.from_param. Problem wynika z niebezpiecznego użycia funkcji sprintf.
Ocena ryzyka
Atakujący może zdalnie wykonać kod w aplikacji wykorzystującej podatną wersję Pythona, co może prowadzić do przejęcia systemu lub naruszenia danych.
Rekomendacja
Zaktualizuj Pythona do wersji 3.9.2 lub nowszej, która zawiera poprawkę dla tej podatności.
Inne podatności w Python
Zobacz wszystkie- CVE-2026-85864Wysokie
Niewłaściwe zarządzanie uprawnieniami w Pythonie umożliwia autoryzowanemu atakującemu lokalne podniesienie uprawnień.
- CVE-2013-7338Wysokie
Python w wersjach przed 3.3.4 RC1 umożliwia zdalnym atakującym wywołanie odmowy usługi poprzez wprowadzenie wartości rozmiaru pliku większej niż rozmiar pliku zip w funkcjach związanych z odczytem i ekstrakcją plików zip.
- CVE-2026-1299Średnie
Moduł email w Pythonie, a konkretnie klasa BytesGenerator, nieprawidłowo cytuje znaki nowej linii w nagłówkach wiadomości podczas serializacji, co umożliwia wstrzyknięcie nagłówka. Problem dotyczy tylko użycia LiteralHeader, które nie respektuje składania nagłówków.
- CVE-2023-24329Wysokie
Podatność w komponencie urllib.parse języka Python przed wersją 3.11.4 umożliwia atakującym ominięcie metod blokowania poprzez dostarczenie adresu URL rozpoczynającego się od znaków pustych.
- CVE-2023-27043Średnie
Moduł email w Pythonie do wersji 3.11.3 błędnie parsuje adresy e-mail zawierające znaki specjalne. Nieprawidłowa część nagłówka RFC2822 jest identyfikowana jako wartość addr-spec.
- CVE-2022-42919Wysokie
Podatność w Pythonie 3.9.x przed 3.9.16 i 3.10.x przed 3.10.9 na systemie Linux umożliwia lokalną eskalację uprawnień w niestandardowej konfiguracji. Biblioteka multiprocessing z metodą startową forkserver pozwala na deserializację pickle'ów od dowolnego użytkownika w tej samej sieci lokalnej maszyny.
- CVE-2022-0391Wysokie
W Pythonie, w module urllib.parse, wykryto podatność polegającą na braku sanityzacji danych wejściowych przez metodę urlparse. Pozwala ona na wprowadzenie znaków ' ' i ' ' do ścieżki URL, co może prowadzić do ataków typu CRLF injection.
- CVE-2020-10735Wysokie
W Pythonie znaleziono błąd. W algorytmach o kwadratowej złożoności czasowej używających niebinarnych baz, przy użyciu int("text"), system może potrzebować 50ms na sparsowanie int stringa z 100 000 cyfr i 5s dla 1 000 000 cyfr (float, decimal, int.from_bytes() i int() dla baz binarnych 2, 4, 8, 16 i 32 nie są dotknięte). Największe zagrożenie z tej podatności to dostępność systemu.
- CVE-2021-3737Wysokie
W Pythonie wykryto błąd w kodzie klienta HTTP, który przy nieprawidłowo obsłużonej odpowiedzi HTTP może spowodować zapętlenie skryptu klienta, zużywając czas procesora. Największe zagrożenie dotyczy dostępności systemu.
- CVE-2021-29921Krytyczne
W Pythonie przed wersją 3.9.5 biblioteka ipaddress nieprawidłowo obsługuje wiodące zera w oktetach adresu IP. W niektórych sytuacjach pozwala to atakującym obejść kontrolę dostępu opartą na adresach IP.
Oryginalny opis (angielski, źródło NVD)
Python 3.x through 3.9.1 has a buffer overflow in PyCArg_repr in _ctypes/callproc.c, which may lead to remote code execution in certain Python applications that accept floating-point numbers as untrusted input, as demonstrated by a 1e300 argument to c_double.from_param. This occurs because sprintf is used unsafely.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

