PatchSiren cyber security CVE debrief
CVE-2026-19553 Python Software Foundation CVE debrief
CVE-2026-19553 is a vulnerability in Python's SSLContext.wrap_bio() method where it fails to validate the server_hostname parameter when ssl.SSLContext.check_hostname is set. This could lead to silent skipping of hostname verification, potentially causing programs to misconfigure certificate verification. The vulnerability affects various Python versions, including 3.10.22, 3.11.17, 3.12.15, 3.13.16, and 3.14.8. 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().
- Vendor
- Python Software Foundation
- Product
- CPython
- CVSS
- HIGH 7.6
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-09-30
- Original CVE updated
- 2026-10-16
- Advisory published
- 2026-09-30
- Advisory updated
- 2026-10-16
Who should care
Defenders responsible for Python applications using SSLContext.wrap_bio() or similar functions should assess their exposure and verify that their code provides a valid server_hostname value. This includes developers and security teams working with Python applications that rely on secure connections.
Why it matters
CVE-2026-19553 is a vulnerability in Python's SSLContext.wrap_bio() method that could lead to silent skipping of hostname verification. Defenders should prioritize verifying and updating their Python versions and review their code to ensure proper hostname verification.
- Hostname verification may be silently skipped, potentially leading to misconfigured certificate verification
- Defenders need to verify and update their Python versions to ensure proper hostname verification
- Reviewing code to ensure a valid server_hostname is provided when using SSLContext.wrap_bio() or similar functions is crucial
Technical summary
The vulnerability is caused by a missing parameter check in SSLObject, which allows hostname verification to be silently skipped if the server_hostname argument is not supplied. This defect could lead to programs where certificate hostname verification appears to be succeeding with SSLContext.check_hostname = True and no ValueError being raised due to misconfiguration. The affected versions include 3.10.22, 3.11.17, 3.12.15, 3.13.16, and 3.14.8. 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(). Defenders should prioritize verifying and updating their Python versions to ensure proper hostname verification.
Defensive priority
Defenders should prioritize verifying and updating their Python versions to ensure proper hostname verification. They should also review their code to ensure that a valid server_hostname is provided when using SSLContext.wrap_bio() or similar functions.
Recommended defensive actions
- Verify and update Python versions to ensure proper hostname verification
- Review code to ensure a valid server_hostname is provided when using SSLContext.wrap_bio() or similar functions
- Apply patches or updates provided by the vendor
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up
- Review the supplied official advisory or CVE record to validate affected scope, severity, and vendor guidance
- Plan vendor-supported updates or mitigations through normal change control where exposure is confirmed
- Check relevant monitoring, detection, and logs for exposed assets that need extra review
Evidence notes
The vulnerability was discovered in Python's SSLContext.wrap_bio() method. The affected versions include 3.10.22, 3.11.17, 3.12.15, 3.13.16, and 3.14.8. Mitigation involves passing a valid server_hostname value.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-19553 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-19553
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-19553 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-19553
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
SSLContext.wrap_bio() missing validation of server_hostname parameter
Unverified legacy reference
URL: https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/19xxx/CVE-2026-19553.json
cve_program_cvelist_v5
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/pull/158503
Supplemental source - patch
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/issues/156793
Supplemental source - issue-tracking
-
Source reference
Unverified legacy reference
URL: https://mail.python.org/archives/list/[email protected]/thread/QNZRG3YOAMTHDCMVCICXGY6YEFPY2VDL/
Supplemental source - vendor-advisory
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/commit/1697ea386c707142555d98a1263176bbbc014a96
Supplemental source - patch
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/commit/641390146a16a38e6701923f4ee4f1940ae77082
Supplemental source - patch
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/commit/966bf426d0b6c31c1b0a255ff14a17143a466ced
Supplemental source - patch
-
Source reference
Unverified legacy reference
URL: https://github.com/python/cpython/commit/f4e43ba525187282f2011da0e6ffc0d2b08d8062
Supplemental source - patch
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.