CVE-2026-19445: Python use-after-free in SSL server-side context with sni_callback

CVE-2026-19445 · Severity: info · Published 2026-09-30

Python's SSL module has a use-after-free vulnerability in server implementations that reassign SSL contexts during TLS connections using the sni_callback mechanism for certificate selection. An unauthenticated remote attacker can crash the server or execute arbitrary code by triggering access to a freed memory region. This affects servers that create or replace SSL contexts per connection rather than wrapping a listening socket with a single shared context.

Technologies: Python CPython. Vendors: Python.

Quick answers

Is CVE-2026-19445 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-19445 being exploited in the wild.
How severe is CVE-2026-19445?
Informational severity, published 30 September 2026.
Which products and versions are affected?
Python CPython 3.10, 3.11, 3.12, 3.13, 3.14, 3.15.
Is there a fix for CVE-2026-19445?
A patch was published on 2026-09-30. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-19445 attacked?
It is attacked over the network.
Am I affected by CVE-2026-19445?
Check whether you run Python CPython at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A use-after-free flaw exists in the Python ssl module when an SNI callback handler assigns a different SSLContext to SSLSocket.context without keeping a reference to the original context. The vulnerability is triggered by an unauthenticated remote TLS client and allows reading from or writing to freed memory. The issue affects server-side socket implementations only; typical vulnerable patterns are per-connection context creation or runtime context replacement.

Affected products

  • Python CPython 3.10, 3.11, 3.12, 3.13, 3.14, 3.15

Timeline

  • 2026-09-30: disclosed
  • 2026-09-30: patched

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.