CVE-2026-69248
ŚrednieCVSS 6.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
Biblioteka python-cryptography przed wersją 49.0.0 nieprawidłowo obsługuje ograniczenia DNS w certyfikatach. Jeśli pośredni CA ogranicza nazwę do foo.example.com, a certyfikat liścia zawiera wildcard *.example.com, walidator akceptuje certyfikat wykraczający poza dozwolone nazwy, co pozwala na akceptację nieprawidłowego łańcucha certyfikatów.
Ocena ryzyka
Atakujący może wykorzystać tę lukę do przedstawienia nieprawidłowego certyfikatu, co może prowadzić do podszywania się pod zaufane domeny i przechwytywania komunikacji.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę python-cryptography do wersji 49.0.0 lub nowszej.
Inne podatności w python-cryptography
Zobacz wszystkie- CVE-2020-25659Średnie
Podatność w bibliotece python-cryptography 3.2 umożliwia ataki timingowe Bleichenbachera na API deszyfrowania RSA. Atakujący może wykorzystać różnice czasowe w przetwarzaniu prawidłowych szyfrogramów PKCS#1 v1.5.
- CVE-2026-69249Wysokie
python-cryptography, biblioteka kryptograficzna dla Pythona, przed wersją 49.0.0, zawiera podatność na atak DoS przez wyczerpanie zasobów. Podczas rozwiązywania nieprawidłowych łańcuchów certyfikatów zawierających duplikaty certyfikatów self-signed, proces rekurencyjnie wywołuje ten sam kandydat, prowadząc do wykładniczego wzrostu złożoności. Atakujący może dostarczyć łańcuch certyfikatów, który powoduje wydłużenie czasu przetwarzania powyżej 5 sekund, co może prowadzić do odmowy usługi. Problem naprawiono w wersji 49.0.0.
Oryginalny opis (angielski, źródło NVD)
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 49.0.0, if an intermediate constrained CA permits the DNS name foo.example.com, and the leaf certificate has a wildcard in its DNS SAN of *.example.com, python-cryptography's verifier accepts which allows escaping outside of the permitted names. The core issue is in DNSConstraint::matches, where a wildcard pattern was treated as matching a more-specific permitted constraint even though *.example.com can expand to sibling names such as bar.example.com outside foo.example.com. This allows acceptance of an invalid certificate chain. This issue is fixed in 49.0.0.

