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.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade python3.12-rpm-macrosUpgrade python3-testUpgrade python3.14Upgrade python3.12-tkinterUpgrade python3.14-freethreading-idleUpgrade python3.12-idleUpgrade python3.14-freethreading-debugUpgrade platform-pythonUpgrade python3.14-develUpgrade python3.12-testUpgrade python-unversioned-commandUpgrade python3.14-freethreading-testUpgrade python3.12Upgrade python3.14-freethreading-tkinterUpgrade python3.12-debugUpgrade python3.14-tkinterUpgrade python3-libsUpgrade platform-python-debugUpgrade python3-develUpgrade python3.14-idleUpgrade python3.14-freethreadingUpgrade python3.14-freethreading-develUpgrade python3-idleUpgrade python3.14-freethreading-libsUpgrade python3.12-libsUpgrade platform-python-develUpgrade python3Upgrade python3.14-debugUpgrade python3-tkinterUpgrade python3.14-libsUpgrade python3.14-testUpgrade python3.12-develUpgrade python3-debug | Oct 11, 2026 | Oct 6, 2026 |
| Alpine Linux | — | Upgrade python3 | Oct 2, 2026 | Sep 30, 2026 |
| Amazon_linux_2023 | — | Upgrade python3.12Upgrade python3-debugUpgrade python3.11-develUpgrade python3.13-freethreadingUpgrade python3.12-libsUpgrade python3.11-debugsourceUpgrade python3.12-idleUpgrade python3.13-tkinterUpgrade python3.14-debugUpgrade python3.14-freethreadingUpgrade python3Upgrade python3.11-debuginfoUpgrade python3.12-debugUpgrade python3.14-tkinterUpgrade python3.14-freethreading-debugUpgrade python3.14-freethreading-develUpgrade python3.14-testUpgrade python3.9-debuginfoUpgrade python3.11-debugUpgrade python3.14-libsUpgrade python3-tkinterUpgrade python3.13-freethreading-debugUpgrade python3.12-develUpgrade python3.12-debugsourceUpgrade python3.13-libsUpgrade python3.9-debugsourceUpgrade python3.14-freethreading-libsUpgrade python3-develUpgrade python3-idleUpgrade python3.13-debuginfoUpgrade python3.14-idleUpgrade python3.14Upgrade python3-libsUpgrade python-unversioned-commandUpgrade python3.14-freethreading-tkinterUpgrade python3.11Upgrade python3.14-develUpgrade python3.14-debugsourceUpgrade python3.13-testUpgrade python3.13-develUpgrade python3-testUpgrade python3.12-testUpgrade python3.14-freethreading-idleUpgrade python3.11-idleUpgrade python3.14-debuginfoUpgrade python3.11-tkinterUpgrade python3.13-debugsourceUpgrade python3.13-idleUpgrade python3.11-testUpgrade python3.12-debuginfoUpgrade python3.11-libsUpgrade python3.12-tkinterUpgrade python3.14-freethreading-testUpgrade python3.13-debugUpgrade python3.13 | Oct 28, 2026 | Sep 30, 2026 |
| Debian | — | Upgrade python3.11 | Oct 12, 2026 | Sep 30, 2026 |
| Ibm Aix | — | Apply the fix or workaround for python_advisory22 | Oct 21, 2026 | Oct 21, 2026 |
| Oracle_linux | — | Upgrade python3.12-tkinterUpgrade python3.12-debugUpgrade python3.14-freethreading-debugUpgrade python3.12-testUpgrade python3.14-idleUpgrade python3-debugUpgrade platform-pythonUpgrade python3.12-idleUpgrade python3.12Upgrade python3-testUpgrade python3.12-develUpgrade python3.14-freethreading-libsUpgrade python3.14Upgrade python3Upgrade python3.12-libsUpgrade python3.14-freethreading-develUpgrade python3.14-libsUpgrade python3.14-develUpgrade python3.14-tkinterUpgrade python3.14-freethreading-idleUpgrade python3.14-freethreading-testUpgrade platform-python-debugUpgrade python-unversioned-commandUpgrade python3-idleUpgrade platform-python-develUpgrade python3-tkinterUpgrade python3.14-testUpgrade python3.12-rpm-macrosUpgrade python3-libsUpgrade python3-develUpgrade python3.14-freethreading-tkinterUpgrade python3.14-freethreadingUpgrade python3.14-debug | Oct 22, 2026 | Sep 30, 2026 |
| Redhat_linux | — | Upgrade python3-testUpgrade python3.14-tkinterUpgrade python3.12-testUpgrade platform-python-debugUpgrade python3-debugUpgrade platform-pythonUpgrade python3.14-freethreading-tkinterUpgrade python3.14-debugUpgrade python3.12-idleUpgrade python3.14-freethreading-debugUpgrade python3.14-develUpgrade python3.14-freethreading-idleUpgrade python3-debugsourceUpgrade python3.12-rpm-macrosUpgrade python3.12-debuginfoNo solution existsUpgrade python3.12-tkinterUpgrade python3.14-freethreading-libsUpgrade python3.14-freethreadingUpgrade python3-idleUpgrade python3.14Upgrade python3.14-debugsourceUpgrade python3.14-libsUpgrade python3.12-libsUpgrade python3.14-idleUpgrade python3.9-debuginfoUpgrade python3.9-debugsourceUpgrade python-unversioned-commandUpgrade python3Upgrade python3.14-freethreading-develUpgrade python3.12-debugsourceUpgrade python3.12-debugUpgrade python3.14-testUpgrade python3-debuginfoUpgrade platform-python-develUpgrade python3.12-develUpgrade python3-develUpgrade python3.14-debuginfoUpgrade python3.12Upgrade python3.14-freethreading-testUpgrade python3-libsUpgrade python3-tkinter | Oct 5, 2026 | Sep 30, 2026 |
| Rocky_linux | — | Upgrade python3-tkinterUpgrade python3.14-freethreadingUpgrade python3-develUpgrade python3.12-debugsourceUpgrade python3.14-freethreading-libsUpgrade python3-debugsourceUpgrade python3.12-libsUpgrade python3.14-freethreading-idleUpgrade python3.14-tkinterUpgrade python3-debugUpgrade python3.12-debugUpgrade python3-libsUpgrade python3.14-testUpgrade python3-debuginfoUpgrade python3.14-debugUpgrade platform-python-debugUpgrade python3.12-develUpgrade python3.14-freethreading-develUpgrade platform-python-develUpgrade python3-idleUpgrade python3.14-freethreading-tkinterUpgrade python3.12-idleUpgrade python3.12-tkinterUpgrade python3.14-freethreading-testUpgrade python3.14-libsUpgrade python3.12-testUpgrade python3-testUpgrade python3.12Upgrade python3.14-idleUpgrade python3.14-debuginfoUpgrade python3.14-develUpgrade python3.14-debugsourceUpgrade python3.14Upgrade python3.14-freethreading-debugUpgrade platform-pythonUpgrade python3.12-debuginfoUpgrade python3 | Oct 15, 2026 | Oct 8, 2026 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub