High severity · published Sep 30, 2026
CVE-2026-19553
SSLContext.wrap_bio() missing validation of server_hostname parameter
7.6
CVSS
0.5%
EPSS
No
On KEV
Description
ssl.SSLContext.wrap_bio() didn't require the server_hostname argument
to not be None if ssl.SSLContext.check_hostname was set. Due to a
missing parameter check in SSLObject, if the server_hostname argument
isn't supplied then hostname verification would be silently skipped.
This defect could lead to programs where certificate hostname verification
*appeared* to be succeeding with SSLContext.check_hostname = True and no
ValueError being raised due to misconfiguration.
If the program passes a server_hostname value that isn't an empty string
or None to any of these APIs then certificate hostname verification
proceeds as expected and the program is not affected by this vulnerability.
Mitigating this vulnerability doesn't require updating Python or applying
the patch. To mitigate, pass a valid non-None and non-empty
server_hostname value to SSLContext.wrap_bio(),
asyncio.create_connection(), or asyncio.loop.start_tls() and
certificate hostname verification will proceed as expected. Upgrading to
the latest version of Python or applying the patch only changes the
behavior from silently skipping hostname verification to raising a
ValueError, similar to SSLContext.wrap_socket(), when server_hostname
isn't supplied.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 46% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
CP
CPython · Python Software Foundation
before 3.10.22; 3.11.0 before 3.11.17; 3.12.0 before 3.12.15; 3.13.0 before 3.13.16; 3.14.0 before 3.14.8; 3.15.0a1 before 3.15.0rc3 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-19553
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-19553
patch
https://github.com/python/cpython/pull/158503
issue-tracking
https://github.com/python/cpython/issues/156793
vendor-advisory
https://mail.python.org/archives/list/security-announce@python.org/thread/QNZRG3YOAMTHDCMVCICXGY6YEFPY2VDL/
patch
https://github.com/python/cpython/commit/1697ea386c707142555d98a1263176bbbc014a96
patch
https://github.com/python/cpython/commit/641390146a16a38e6701923f4ee4f1940ae77082
patch
https://github.com/python/cpython/commit/966bf426d0b6c31c1b0a255ff14a17143a466ced
More from CPython
9.4
CVE-2026-115557
Distrust compromised intermediate certificates in ssl module
9.2
CVE-2026-19445
Use-after-free of a server-side SSLContext when sni_callback switches contexts
8.8
CVE-2026-3298
Out-of-bounds write in Windows asyncio.ProacterEventLoop.sock_recvfrom_into() when using nbytes
8.4
CVE-2026-82049
tarfile extraction filters allow file modification and content disclosure via hard link to symlink
8.2
CVE-2026-11972
tarfile opened in streaming mode mishandles EOF
