Vulnerability · Published Sep 30, 2026 · Assigned by PSF

CVE-2026-19553SSLContext.wrap_bio() missing validation of server_hostname parameter

High 7.6

In plain English

A high-severity security flaw in CPython from Python Software Foundation. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 46% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code. Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)7.6High
Exploit odds (30 days)0.5%top 54.0% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack tooling1Public PoC

Official 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.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
AlmaLinux:8platform-python3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:8platform-python-debug3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:8platform-python-devel3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:10python-unversioned-command3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:9python-unversioned-command3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python33.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:9python33.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-debug3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:9python3-debug3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-devel3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:9python3-devel3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-idle3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:8python3-idle3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:9python3-idle3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-libs3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:8python3-libs3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:9python3-libs3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-test3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:8python3-test3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:9python3-test3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:10python3-tkinter3.12.15-1.el10_2ALSA-2026:77020
AlmaLinux:8python3-tkinter3.6.8-79.el8_10.alma.1ALSA-2026:85239
AlmaLinux:9python3-tkinter3.9.25-7.el9_8.6ALSA-2026:89742
AlmaLinux:8python3.123.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.123.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-debug3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-debug3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-devel3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-devel3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-idle3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-idle3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-libs3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-libs3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-rpm-macros3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:8python3.12-test3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-test3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:8python3.12-tkinter3.12.15-2.el8_10ALSA-2026:77028
AlmaLinux:9python3.12-tkinter3.12.15-1.el9_8ALSA-2026:77017
AlmaLinux:10python3.143.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.143.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-debug3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-debug3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-devel3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-devel3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-debug3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-debug3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-devel3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-devel3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-idle3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-idle3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-libs3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-libs3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-test3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-test3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-freethreading-tkinter3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-freethreading-tkinter3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-idle3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-idle3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-libs3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-libs3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-test3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-test3.14.8-1.el9_8ALSA-2026:77021
AlmaLinux:10python3.14-tkinter3.14.8-1.el10_2ALSA-2026:77018
AlmaLinux:9python3.14-tkinter3.14.8-1.el9_8ALSA-2026:77021
Alpine:v3.21python33.12.15-r0ALPINE-CVE-2026-19553
Alpine:v3.22python33.12.15-r0ALPINE-CVE-2026-19553
Alpine:v3.23python33.12.15-r0ALPINE-CVE-2026-19553
Alpine:v3.24python33.14.8-r0ALPINE-CVE-2026-19553
Debian:12pypy3no fix listedDEBIAN-CVE-2026-19553
Debian:13pypy3no fix listedDEBIAN-CVE-2026-19553
Debian:14pypy38.0.1+dfsg-1DEBIAN-CVE-2026-19553
Debian:12python3.113.11.2-6+deb12u9DEBIAN-CVE-2026-19553
Debian:13python3.13no fix listedDEBIAN-CVE-2026-19553
Debian:14python3.143.14.8-1DEBIAN-CVE-2026-19553
Debian:14python3.153.15.0~rc3-1DEBIAN-CVE-2026-19553
Rocky Linux:8python30:3.6.8-79.el8_10.rocky.0RLSA-2026:85239
Rocky Linux:10python3.120:3.12.15-1.el10_2RLSA-2026:77020
Rocky Linux:8python3.120:3.12.15-2.el8_10RLSA-2026:77028
Rocky Linux:9python3.120:3.12.15-1.el9_8RLSA-2026:77017
Rocky Linux:10python3.140:3.14.8-1.el10_2RLSA-2026:77018
Rocky Linux:9python3.140:3.14.8-1.el9_8RLSA-2026:77021
Rocky Linux:9python3.90:3.9.25-7.el9_8.6RLSA-2026:89742
Ubuntu:22.04:LTSpython3.10no fix listedUBUNTU-CVE-2026-19553
Ubuntu:24.04:LTSpython3.12no fix listedUBUNTU-CVE-2026-19553
Ubuntu:26.04:LTSpython3.14no fix listedUBUNTU-CVE-2026-19553
Ubuntu:26.10python3.14no fix listedUBUNTU-CVE-2026-19553

Affected products (as reported)

VendorProductVersions
Python Software Foundation CPython 0 – before 3.10.223.11.0 – before 3.11.173.12.0 – before 3.12.153.13.0 – before 3.13.163.14.0 – before 3.14.83.15.0a1 – before 3.15.0rc3

Weakness: CWE-297 · Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

References