CVE-2026-27448
mediumpriority · track · 21EPSS 0.003 · 16 %ileDEEUUSEPSS · scored 2026-10-27
pyOpenSSL is a Python wrapper around the OpenSSL library. Starting in version 0.14.0 and prior to version 26.0.0, if a user provided callback to `set_tlsext_servername_callback` raised an unhandled exception, this would result in a connection being accepted. If a user was relying on this callback for any security-sensitive behavior, this could allow bypassing it. Starting in version 26.0.0, unhandled exceptions now result in rejecting the connection.
remediations
Vendor fix, mitigation, or workaround guidance, as published by each source.
A vendor fix is available.
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise High Performance Computing 15 SP4-LTSSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise High Performance Computing 15 SP5-LTSSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise Module for Public Cloud 15 SP4suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise Module for Python 3 15 SP7suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise Server 15 SP4-LTSSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise Server 15 SP5-LTSSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of SUSE Linux Enterprise Server 15 SP6-LTSSsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:23.2.0-150400.3.13.1.noarch as component of openSUSE Leap 15.6suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:25.0.0-160000.3.1.noarch as component of SUSE Linux Enterprise Server 16.0suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:25.0.0-160000.3.1.noarch as component of SUSE Linux Enterprise Server for SAP applications 16.0suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:24.0.0-slfo.1.1_2.1.noarch as component of SUSE Linux Micro 6.1suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:24.0.0-2.1.noarch as component of SUSE Linux Micro 6.0suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:26.0.0-1.1.aarch64 as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:26.0.0-1.1.ppc64le as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:26.0.0-1.1.s390x as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython311-pyOpenSSL-0:26.0.0-1.1.x86_64 as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:26.0.0-1.1.aarch64 as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:26.0.0-1.1.ppc64le as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:26.0.0-1.1.s390x as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:26.0.0-1.1.x86_64 as component of openSUSE Tumbleweedsuse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
- Fixedpython313-pyOpenSSL-0:25.0.0-160000.3.1.noarch as component of openSUSE Leap 16.0suse_csaf
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · low–medium · 1.7–5.3
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (16)
Products and version ranges known to be affected.
- Red Hat Enterprise Linux Hardened Images RPMs pyOpenSSLall versionscert_bundDEcpe:/o:redhat:enterprise_linux:hardened_images_rpms_pyopenssl
- Red Hat OpenShift Container Platformall versionscert_bundDEcpe:/a:redhat:openshift:container_platform
advisories (9)
Vendor and ecosystem advisories describing this.
- SUSE-SU-2026:1192-1Security update for python-pyOpenSSL2026-04-07csaf · suse_csafDE
Security update for python-pyOpenSSL
- SUSE-SU-2026:20930-1Security update for python-pyOpenSSL2026-03-25csaf · suse_csafDE
Security update for python-pyOpenSSL
- SUSE-SU-2026:20954-1Security update for python-pyOpenSSL2026-04-01csaf · suse_csafDE
Security update for python-pyOpenSSL
- SUSE-SU-2026:20960-1Security update for python-pyOpenSSL2026-04-01csaf · suse_csafDE
Security update for python-pyOpenSSL
- WID-SEC-W-2026-1183Red Hat Hardened Images RPMs (jq und pyOpenSSL): Mehrere SchwachstellenDeutsch2026-04-20csaf · cert_bundDE
Ein entfernter, anonymer Angreifer kann mehrere Schwachstellen in Red Hat Red Hat Hardened Images RPMs ausnutzen, um Sicherheitsvorkehrungen zu umgehen, einen Denial-of-Service-Zustand verursachen, vertrauliche Informationen offenlegen oder nicht näher spezifizierte Angriffe durchführen, einschließlich potenzieller Codeausführung.
- openSUSE-SU-2026:10392-1python311-pyOpenSSL-26.0.0-1.1 on GA media2026-03-19csaf · suse_csafDE
python311-pyOpenSSL-26.0.0-1.1 on GA media
- openSUSE-SU-2026:20419-1Security update for python-pyOpenSSL2026-03-25csaf · suse_csafDE
Security update for python-pyOpenSSL
- GHSA-vp96-hxj8-p424pyOpenSSL allows TLS connection bypass via unhandled callback exception in set_tlsext_servername_callback2026-03-16ghsa · osvUS
If a user provided callback to `set_tlsext_servername_callback` raised an unhandled exception, this would result in a connection being accepted. If a user was relying on this callback for any security-sensitive behavior, this could allow bypassing it. Unhandled exceptions now result in rejecting the connection. Credit to **Leury Castillo** for reporting this issue.
- PYSEC-2026-22682026-03-18vendor · osvUS
pyOpenSSL is a Python wrapper around the OpenSSL library. Starting in version 0.14.0 and prior to version 26.0.0, if a user provided callback to `set_tlsext_servername_callback` raised an unhandled exception, this would result in a connection being accepted. If a user was relying on this callback for any security-sensitive behavior, this could allow bypassing it. Starting in version 26.0.0, unhandled exceptions now result in rejecting the connection.
also known as (6)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (12)
External citations — patches, advisories, analysis.
- https://access.redhat.com/security/cve/cve-2026-27448cnnvd
- https://github.com/pyca/pyopenssl/blob/358cbf29c4e364c59930e53a270116249581eaa3/CHANGELOG.rst#L27cnnvd
- https://github.com/pyca/pyopenssl/commit/d41a814759a9fb49584ca8ab3f7295de49a85aa0cnnvd
- https://github.com/pyca/pyopenssl/security/advisories/GHSA-vp96-hxj8-p424cnnvd
- https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-27448cnnvd
- https://www.pyopenssl.org/en/latest/Patchcnnvd
- https://github.com/pyca/pyopenssl/blob/358cbf29c4e364c59930e53a270116249581eaa3/CHANGELOG.rst#L27enisa_euvd
- https://github.com/pyca/pyopenssl/commit/d41a814759a9fb49584ca8ab3f7295de49a85aa0enisa_euvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan