[CLSA-2026:1791446722] Fix CVE(s): CVE-2026-19445, CVE-2026-19553
Type:
security
Severity:
Critical
Release date:
2026-10-08 09:48:27 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:6309e7537744c34ca8c199280eb3765ffc77c019
  • alt-python36-debug_3.6.15-50_amd64.deb
    sha:dbc7c0939466c64a0ea44e9cfd77f27dfc59439b
  • alt-python36-devel_3.6.15-50_amd64.deb
    sha:63b6196896290f7179e78272868281deffcd34e8
  • alt-python36-libs_3.6.15-50_amd64.deb
    sha:8b04b36a7629758857f20eb5b4705679e210de56
  • alt-python36-test_3.6.15-50_amd64.deb
    sha:b00d377f3ceb7cdf326c323b9f55e42cd3fc3ef8
  • alt-python36-tkinter_3.6.15-50_amd64.deb
    sha:23c8fb435c2ee7801238ebb060929cf30ec5d60d
  • alt-python36-tools_3.6.15-50_amd64.deb
    sha:0eabef19e1b32305547dc1b9cb9dce650b4a0dcd
  • alt-python36_3.6.15-50_arm64.deb
    sha:afe54d08345dada73a93229fc51832ccd6f52936
  • alt-python36-debug_3.6.15-50_arm64.deb
    sha:1ce8fe0be694db5c6399387d7de1077764212f5e
  • alt-python36-devel_3.6.15-50_arm64.deb
    sha:8c4acdf0963238e1b17dbaccb1ec52c2c5cb1e6e
  • alt-python36-libs_3.6.15-50_arm64.deb
    sha:cb333ff95a4f265019d79fd6f6a4dd4bec8614bd
  • alt-python36-test_3.6.15-50_arm64.deb
    sha:2317fb8420fe99bf57bf7a17d4d8f8a611a99772
  • alt-python36-tkinter_3.6.15-50_arm64.deb
    sha:8525fc3db508734a7195506da669a795cf8fb07d
  • alt-python36-tools_3.6.15-50_arm64.deb
    sha:550e7a2f2f88da794be3ac0b320a2f7e459438ef
Notes:
This page is generated automatically and has not been checked for errors. For clarification or corrections please contact the CloudLinux Packaging Team.