CVE-2019-9636
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Bardzo wysokie ryzykoPercentyl 95 - wyżej niż 95% wszystkich znanych CVE
Streszczenie
Python 2.7.x do 2.7.16 i 3.x do 3.7.2 ma problem z nieprawidłową obsługą kodowania Unicode (z nieprawidłowym netloc) podczas normalizacji NFKC. Skutkiem jest ujawnienie informacji (poświadczenia, ciasteczka itp.) przechowywanych dla danego hosta. Komponenty: urllib.parse.urlsplit, urllib.parse.urlparse. Atak polega na specjalnie spreparowanym URL-u, który może być błędnie sparsowany, co powoduje wysłanie danych do innego hosta.
Ocena ryzyka
Ryzyko wycieku poświadczeń i ciasteczek do nieautoryzowanych hostów, co może prowadzić do kradzieży sesji lub danych uwierzytelniających.
Rekomendacja
Zaktualizuj Pythona do wersji 2.7.17, 3.5.10, 3.6.10, 3.7.3 lub nowszych, zgodnie z używaną wersją.
Inne podatności w Python
Zobacz wszystkie- 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-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-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-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-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-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-2022-0391Wysokie
Błąd w module urllib.parse w Pythonie, polegający na braku sanityzacji danych wejściowych przez metodę urlparse, która pozwala na wstawianie znaków '\r' i '\n' w ścieżce URL. Umożliwia to atakującemu wprowadzenie spreparowanego URL-a, co może prowadzić do ataków typu injection. Problem dotyczy wersji Python przed 3.10.0b1, 3.9.5, 3.8.11, 3.7.11 i 3.6.14.
- 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.
- CVE-2021-23336Średnie
Pakiety python/cpython w wersjach do 3.6.13, od 3.7.0 do 3.7.10, od 3.8.0 do 3.8.8 oraz od 3.9.0 do 3.9.2 są podatne na zatruwanie pamięci podręcznej sieci (Web Cache Poisoning) poprzez funkcje urllib.parse.parse_qsl i urllib.parse.parse_qs. Atakujący może wykorzystać technikę zwaną ukrywaniem parametrów, rozdzielając parametry zapytania średnikiem (;), co powoduje różnice w interpretacji żądania między serwerem proxy a serwerem.
Oryginalny opis (angielski, źródło NVD)
Python 2.7.x through 2.7.16 and 3.x through 3.7.2 is affected by: Improper Handling of Unicode Encoding (with an incorrect netloc) during NFKC normalization. The impact is: Information disclosure (credentials, cookies, etc. that are cached against a given hostname). The components are: urllib.parse.urlsplit, urllib.parse.urlparse. The attack vector is: A specially crafted URL could be incorrectly parsed to locate cookies or authentication data and send that information to a different host than when parsed correctly. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.7, 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.9, v3.6.9rc1; 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

