Release date:
2026-10-27 14:55:14 UTC
Description:
* SECURITY UPDATE: TLS chains issued under a set of compromised eMudhra
intermediate CA keys were still accepted. The private keys of eight
eMudhra intermediate CAs leaked, so anyone holding them can mint a
certificate for any name; such a chain keeps verifying for as long as the
issuing roots remain in the platform trust store, which is exactly the
window between the compromise becoming known and the root-store update
reaching an OS, a container image, or a trust store bundled inside a
Python package.
- debian/patches/CVE-2026-115557.patch: backport of cpython gh-160040 /
GH-160042, which adds Modules/_ssl/distrusted_spki.h, a hardcoded table
of the SHA-256 digests of the eight compromised SubjectPublicKeyInfo
structures, and enforces it from a new _ssl verify callback: any
certificate in the chain whose SPKI digest is on the list fails
verification with X509_V_ERR_CERT_REJECTED. The denylist matches the
public key rather than a certificate fingerprint, so cross-signed
certificates that reuse one of those keys are covered too. Upstream
released the fix only in 3.11.18, 3.12.16, 3.13.18, 3.14.10 and 3.15.2,
so it has to be carried for 3.8. The header and both new C functions
are upstream verbatim. Upstream's one-line SSL_CTX_set_verify() change
in _set_verify_mode() is adapted to 3.8's "keep current verify cb"
spelling (bpo-37428), which read the context's own callback back and
re-installed it; the callback it read was always NULL, so the three
lines are replaced by upstream's single call installing
_ssl_verify_callback. Upstream's second wiring hunk, in
newPySSLSocket(), is already present in 3.8 as that same idiom and
needed no change. Upstream's Makefile.pre.in hunk has no counterpart in
3.8, which builds _ssl from setup.py, so the new header is added to
that extension's depends list instead. The upstream tests, the
distrusted.zip fixture, make_ssl_certs.py, the Misc/NEWS.d fragment and
the PCbuild project files are omitted.
- CVE-2026-115557
Updated packages:
-
alt-python38_3.8.20-34_amd64.deb
sha:fc73795f4addfb4173a7aaadd72a1fc4ac7d461a
-
alt-python38-debug_3.8.20-34_amd64.deb
sha:f178df0d308180bf135a3e2ecc66c48101853281
-
alt-python38-devel_3.8.20-34_amd64.deb
sha:169b1061fa8cfc70d2332abcff11e91f8e32ec8d
-
alt-python38-idle_3.8.20-34_amd64.deb
sha:b9f698efd2666ccd057241ec04a742b0bd647f72
-
alt-python38-libs_3.8.20-34_amd64.deb
sha:c1f46075a4d26ec5127865b287ae8624c8399596
-
alt-python38-test_3.8.20-34_amd64.deb
sha:8373857f3a19d7d62c8742cccd307cd4bd4d895e
-
alt-python38-tkinter_3.8.20-34_amd64.deb
sha:7d796fc19bb89af1970ddaff7f4234b1e4ab2c26
-
alt-python38_3.8.20-34_arm64.deb
sha:caed015d1039a5fb19c0085a96cfe82211fd3b6b
-
alt-python38-debug_3.8.20-34_arm64.deb
sha:eb247f95db8d1fd6979ddcc87c808330ec89d09e
-
alt-python38-devel_3.8.20-34_arm64.deb
sha:b6f143742bb75bef96bdfe49d2b45211698d6061
-
alt-python38-idle_3.8.20-34_arm64.deb
sha:91bffecb06c4a6dbb71a2200659e325ef8a0fc5c
-
alt-python38-libs_3.8.20-34_arm64.deb
sha:1221f0acbd8543c92132173e31d2fe167ecdda19
-
alt-python38-test_3.8.20-34_arm64.deb
sha:59a1014dca4870531aaade3c19d0160eb6687136
-
alt-python38-tkinter_3.8.20-34_arm64.deb
sha:3983b2b33b4523af79c36672ee774004fc057049
Notes:
This page is generated automatically and has not been checked for errors. For clarification or
corrections please contact the
CloudLinux Packaging Team.