CVE-2026-115557

Distrust compromised intermediate certificates in ssl module

Published Oct 24, 2026 CVSS 4.0 · 9.4 Critical EPSS < 1% KEV · Not listed
Description
Python has added a denylist for known compromised certificates to the "ssl" module to ensure user safety even without certificate revocation configured. Known compromised certificates will automatically be rejected regardless of the SSLContext policy configuration.

Analysis

AI-generated

Technical impact

Python's ssl module previously accepted any certificate chain unless explicit revocation was configured. This oversight allowed attackers to use compromised intermediate certificates to create seemingly valid TLS connections, enabling eavesdropping or credential theft. The issue is classified as a Trust Management flaw (CWE‑299) and carries a high severity of CVSS 9.4, indicating a serious threat to confidentiality and integrity.

Affected Systems

The flaw affects the Python Software Foundation's CPython implementation. All CPython releases prior to the fix that do not contain the denylist for known compromised certificates are vulnerable, regardless of operating system or platform.

Risk and Exploitability

The vulnerability can be exploited during the SSL/TLS handshake when a client accepts a server certificate chain that includes a compromised intermediate. Attackers who control the intermediate can impersonate legitimate servers. The EPSS score is not available, but the high CVSS score and absence from the KEV catalog mean the risk remains significant unless mitigated with the official patch.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to a CPython release that contains the denylist for compromised certificates.
  • Configure your Python applications to enforce strict SSL/TLS certificate verification, ensuring that any certificate chain is validated against a trusted certificate authority and rejecting chains that include compromised intermediates.
  • If the patch cannot be applied immediately, modify your application to perform an additional check against the known compromised certificate list (e.g., by adding logic that examines the issuer field of intermediate certificates and rejects the connection if it matches an entry in the denylist).

Generated by OpenCVE AI on October 24, 2026 at 15:50 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Python
Python cpython
Python Software Foundation
Python Software Foundation cpython
Vendors & Products Python
Python cpython
Python Software Foundation
Python Software Foundation cpython
Type Values Removed Values Added
Description Python has added a denylist for known compromised certificates to the "ssl" module to ensure user safety even without certificate revocation configured. Known compromised certificates will automatically be rejected regardless of the SSLContext policy configuration.
Title Distrust compromised intermediate certificates in ssl module
Weaknesses CWE-299
References
Metrics cvssV4_0

{'score': 9.4, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H'}

Weaknesses
  • CWE-299

    Improper Check for Certificate Revocation

Sources

Status
PUBLISHED
Assigner
PSF
Published
Updated
Nov 10, 2026, 8:09 PM
Reserved
Oct 22, 2026, 9:32 PM
Status
Awaiting Analysis
Published
Oct 24, 2026, 3:17 PM
Modified
Nov 2, 2026, 3:17 PM