CVE-2024-26130
WysokieCVSS 7.5Streszczenie
Biblioteka cryptography w wersjach od 38.0.0 do 42.0.4 zawiera podatność polegającą na dereferencji wskaźnika NULL w funkcji pkcs12.serialize_key_and_certificates, gdy certyfikat nie pasuje do klucza prywatnego, a ustawiono encryption_algorithm z hmac_hash. Może to spowodować awarię procesu Python.
Ocena ryzyka
Może to prowadzić do odmowy usługi (crash) aplikacji wykorzystujących tę funkcję. Ryzyko dotyczy aplikacji Pythona używających biblioteki cryptography do operacji PKCS12.
Rekomendacja
Zaktualizuj bibliotekę cryptography do wersji 42.0.4 lub nowszej. Upewnij się, że pary klucz-certyfikat są zgodne przed wywołaniem funkcji.
Inne podatności w cryptography
Zobacz wszystkie- CVE-2026-39892Krytyczne
Biblioteka cryptography dla Pythona w wersjach od 45.0.0 do 46.0.6 zawiera podatność na przepełnienie bufora. Problem występuje, gdy do funkcji akceptujących bufory Pythona (np. Hash.update()) przekazany zostanie nieciągły bufor. Luka została naprawiona w wersji 46.0.7.
- CVE-2020-36242Krytyczne
W pakiecie cryptography dla języka Python przed wersją 3.3.2, sekwencje wywołań funkcji aktualizującej szyfrowanie symetryczne dla danych o rozmiarze wielu gigabajtów mogą prowadzić do przepełnienia liczb całkowitych i przepełnienia bufora, co zostało zademonstrowane na klasie Fernet.
- CVE-2026-69248Średnie
Pakiet cryptography dla Pythona w wersjach od 45.0.0 do 48.0.0 ma podatność w weryfikacji łańcucha certyfikatów. Jeśli pośrednie CA z ograniczeniami zezwala na nazwę foo.example.com, a certyfikat liścia ma wildcard *.example.com, weryfikator akceptuje łańcuch, co pozwala na wyjście poza dozwolone nazwy. Problem naprawiono w wersji 49.0.0.
- CVE-2026-69247Wysokie
cryptography, biblioteka kryptograficzna dla Pythona, w wersjach od 44.0.0 do 50.0.0, zawiera podatność na atak typu Bleichenbacher. Funkcje pkcs7_decrypt_der, pkcs7_decrypt_pem i pkcs7_decrypt_smime ujawniają różnice w wynikach deszyfrowania encryptedKey, co może być wykorzystane przez atakującego do odszyfrowania klucza szyfrowania treści. Atak wymaga usługi automatycznie deszyfrującej niezaufane EnvelopedData, np. bramy S/MIME. Problem naprawiono w wersji 50.0.0.
- CVE-2026-34073Średnie
Biblioteka cryptography dla Pythona przed wersją 46.0.6 walidowała ograniczenia nazw DNS tylko względem SAN w certyfikatach podrzędnych, a nie względem "peer name" prezentowanej podczas każdej walidacji. W rezultacie cryptography pozwalała na walidację peera o nazwie bar.example.com względem certyfikatu liścia z wildcardem *.example.com, nawet jeśli certyfikat nadrzędny (lub wyżej) zawierał ograniczenie wykluczające dla bar.example.com. Problem został naprawiony w wersji 46.0.6.
- CVE-2026-26007Średnie
Biblioteka cryptography dla Pythona przed wersją 46.0.5 nie weryfikuje, czy punkt klucza publicznego należy do oczekiwanej podgrupy krzywej. Brak walidacji umożliwia atakującemu dostarczenie punktu z małej podgrupy, co prowadzi do wycieku informacji o kluczu prywatnym w ECDH i umożliwia fałszowanie podpisów ECDSA. Podatność dotyczy krzywych SECT.
Oryginalny opis (angielski, źródło NVD)
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Starting in version 38.0.0 and prior to version 42.0.4, if `pkcs12.serialize_key_and_certificates` is called with both a certificate whose public key did not match the provided private key and an `encryption_algorithm` with `hmac_hash` set (via `PrivateFormat.PKCS12.encryption_builder().hmac_hash(...)`, then a NULL pointer dereference would occur, crashing the Python process. This has been resolved in version 42.0.4, the first version in which a `ValueError` is properly raised.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

