CVE-2026-69248

NameCVE-2026-69248
Descriptioncryptography 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.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
python-cryptography (PTS)bullseye3.3.2-1vulnerable
bullseye (security)3.3.2-1+deb11u1vulnerable
bookworm38.0.4-3+deb12u1vulnerable
bookworm (security)38.0.4-3~deb12u1vulnerable
trixie43.0.0-3+deb13u1vulnerable
forky47.0.0-1vulnerable
sid49.0.0-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
python-cryptographysource(unstable)49.0.0-1

Notes

https://github.com/pyca/cryptography/security/advisories/GHSA-m2h6-j472-rp4c
https://github.com/pyca/cryptography/pull/14888
Fixed by: https://github.com/pyca/cryptography/commit/4d035a4225965edeffd312079a510ef25fcfdcb2 (49.0.0)

Search for package or bug name: Reporting problems