Release date:
2026-10-08 09:43:50 UTC
Description:
* SECURITY UPDATE: use-after-free in the ssl servername (SNI) callback.
_servername_callback() reached the Python SSLContext through a borrowed
pointer registered with SSL_CTX_set_tlsext_servername_arg(). When the
callback switched the connection to another context and nothing else
kept the original one alive, a raising callback (PyErr_WriteUnraisable)
or a second ClientHello (TLS 1.3 HelloRetryRequest, TLS 1.2
renegotiation) dispatched through the session_ctx used freed memory.
- debian/patches/CVE-2026-19445.patch: backport of cpython
ec44b5a3258cbda947d5e07242ee562ed05ef24b (gh-156293, GH-158504). The
callback now takes strong references to ssl->ctx and its callback,
the borrowed arg is no longer registered, and context_dealloc()
unregisters the callback. Rewritten for 3.6's set_hostname field,
WITH_THREAD guards and lack of Py_NewRef(); the tests use
set_servername_callback() instead of sni_callback.
- CVE-2026-19445
* SECURITY UPDATE: SSLContext.wrap_bio() did not require server_hostname
when check_hostname was enabled, so an SSLObject whose handshake ran
implicitly through read()/write() verified the certificate chain but
never the peer's hostname, and reported no error.
- debian/patches/CVE-2026-19553.patch: backport of cpython
5867d4e4ae6d1062352baf6b497a4026e8578ccf (gh-156793, GH-158503).
wrap_bio() now validates its parameters as wrap_socket() does. It
raises ValueError, as upstream 3.13+ does, instead of the 3.10
DeprecationWarning, which 3.6 ignores by default. The asyncio part
does not apply to 3.6.
- CVE-2026-19553
Updated packages:
-
alt-python36_3.6.15-50_amd64.deb
sha:862674959b89fadbc1dcf435f0d058472c5b5fc2
-
alt-python36-debug_3.6.15-50_amd64.deb
sha:e13dab183c59beb30143491d727b8d529683ec0d
-
alt-python36-devel_3.6.15-50_amd64.deb
sha:09c6ab794411d1c1cb5d9efadded118316d418f8
-
alt-python36-libs_3.6.15-50_amd64.deb
sha:7904e1fff002dd45fe142afdfc2582ae0237ce47
-
alt-python36-test_3.6.15-50_amd64.deb
sha:a1e3d8ca35baaebc3d3a505399817cac4439acae
-
alt-python36-tkinter_3.6.15-50_amd64.deb
sha:e74c809e115fbbac252cf7e5b1b280b7ce25e346
-
alt-python36-tools_3.6.15-50_amd64.deb
sha:1a2e958c1196ea2495a4f8c9583a5e1fb5700548
-
alt-python36_3.6.15-50_arm64.deb
sha:f7741e64809f04c11fbd0868d679fd722fda3a40
-
alt-python36-debug_3.6.15-50_arm64.deb
sha:3dc5eae9f9d3c5d7ee1ee132b5f4c16ae299efc1
-
alt-python36-devel_3.6.15-50_arm64.deb
sha:beb9c0b5e40699c13acd614aea44ead5aa4428aa
-
alt-python36-libs_3.6.15-50_arm64.deb
sha:ffc362d57e05a280615a11ba14a4834c86e4e7e5
-
alt-python36-test_3.6.15-50_arm64.deb
sha:1dbbc961bbcd5e7b13ac7402e8b230b364d54877
-
alt-python36-tkinter_3.6.15-50_arm64.deb
sha:efd811a4da6ec9533d2e25944cf89f20334d41ec
-
alt-python36-tools_3.6.15-50_arm64.deb
sha:d81d3712ff04cf321783e4866b945d38ee0fa869
Notes:
This page is generated automatically and has not been checked for errors. For clarification or
corrections please contact the
CloudLinux Packaging Team.