python3.14-3.14.8-1.el9_8
エラータID: AXSA:2026-2028:08
Python is an interpreted, interactive, object-oriented programming language, which includes modules, classes, exceptions, very high level dynamic data types and dynamic typing. Python supports interfaces to many system calls and libraries, as well as to various windowing systems.
Security Fix(es):
* python: python: Certificate verification bypass via missing server_hostname validation in SSLContext.wrap_bio() (CVE-2026-19553)
* python: Use-after-free of a server-side SSLContext when sni_callback switches contexts (CVE-2026-19445)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
CVE-2026-19445
A remote, unauthenticated TLS client can make a server crash or call through a freed pointer if its sni_callback assigns a different context to SSLSocket.context (the documented way to select a certificate per server name) and nothing else keeps the original ssl.SSLContext alive. Typical cases are servers that create an SSLContext per connection or replace it while connections are open; servers that wrap their listening socket with it are not affected. Mitigation: keep a reference to every SSLContext that sets sni_callback for the lifetime of the server. TLS clients are not affected.
CVE-2026-19553
ssl.SSLContext.wrap_bio() didn't require the server_hostname argument to not be None if ssl.SSLContext.check_hostname was set. Due to a missing parameter check in SSLObject, if the server_hostname argument isn't supplied then hostname verification would be silently skipped. This defect could lead to programs where certificate hostname verification *appeared* to be succeeding with SSLContext.check_hostname = True and no ValueError being raised due to misconfiguration. If the program passes a server_hostname value that isn't an empty string or None to any of these APIs then certificate hostname verification proceeds as expected and the program is not affected by this vulnerability. Mitigating this vulnerability doesn't require updating Python or applying the patch. To mitigate, pass a valid non-None and non-empty server_hostname value to SSLContext.wrap_bio(), asyncio.create_connection(), or asyncio.loop.start_tls() and certificate hostname verification will proceed as expected. Upgrading to the latest version of Python or applying the patch only changes the behavior from silently skipping hostname verification to raising a ValueError, similar to SSLContext.wrap_socket(), when server_hostname isn't supplied.
Update packages.
A remote, unauthenticated TLS client can make a server crash or call through a freed pointer if its sni_callback assigns a different context to SSLSocket.context (the documented way to select a certificate per server name) and nothing else keeps the original ssl.SSLContext alive. Typical cases are servers that create an SSLContext per connection or replace it while connections are open; servers that wrap their listening socket with it are not affected. Mitigation: keep a reference to every SSLContext that sets sni_callback for the lifetime of the server. TLS clients are not affected.
ssl.SSLContext.wrap_bio() didn't require the server_hostname argument to not be None if ssl.SSLContext.check_hostname was set. Due to a missing parameter check in SSLObject, if the server_hostname argument isn't supplied then hostname verification would be silently skipped. This defect could lead to programs where certificate hostname verification *appeared* to be succeeding with SSLContext.check_hostname = True and no ValueError being raised due to misconfiguration. If the program passes a server_hostname value that isn't an empty string or None to any of these APIs then certificate hostname verification proceeds as expected and the program is not affected by this vulnerability. Mitigating this vulnerability doesn't require updating Python or applying the patch. To mitigate, pass a valid non-None and non-empty server_hostname value to SSLContext.wrap_bio(), asyncio.create_connection(), or asyncio.loop.start_tls() and certificate hostname verification will proceed as expected. Upgrading to the latest version of Python or applying the patch only changes the behavior from silently skipping hostname verification to raising a ValueError, similar to SSLContext.wrap_socket(), when server_hostname isn't supplied.
N/A
SRPMS
- python3.14-3.14.8-1.el9_8.src.rpm
MD5: 26e11b791c8d218b421cfe2a22a667d2
SHA-256: 2bd6c53b2507884ae5298d7daa731bf92584bf775d66dd780a1829754210423f
Size: 23.07 MB
Asianux Server 9 for x86_64
- python3.14-3.14.8-1.el9_8.i686.rpm
MD5: 79f263e4f6a2574ed96ef172326d35f2
SHA-256: 48a9fd181401ecb44e2152b9752959a1c2a6454612e90e621f47e2e6d663fc3d
Size: 28.28 kB - python3.14-3.14.8-1.el9_8.x86_64.rpm
MD5: a396de1bf350de248cda25dc3ba67b9f
SHA-256: 1a68cb471fabdbf63dc933bcafd8908c94b9079b17c930bd422364b2b5aaf73b
Size: 28.29 kB - python3.14-debug-3.14.8-1.el9_8.i686.rpm
MD5: 2c43088249e15ddcdbd80004fc4fed91
SHA-256: cab764c1a646d95a9ec1290fe2a51b78e10d5fa4b864cb65dc6989f60d59f3a4
Size: 4.09 MB - python3.14-debug-3.14.8-1.el9_8.x86_64.rpm
MD5: f358e3ebe2abf494fe0fc184d7804d2c
SHA-256: 11db19e008b7f04439f162bb12aeea99d5d57de48f5a16aa6cea707fa0d506c7
Size: 4.22 MB - python3.14-devel-3.14.8-1.el9_8.i686.rpm
MD5: 8241a677470a1ef3c7d3bc02d1f77cb7
SHA-256: 3279a0e8ff592ccb4f02e82fac961d612c672de01f60d4a7ee1721bd1879dcbc
Size: 457.75 kB - python3.14-devel-3.14.8-1.el9_8.x86_64.rpm
MD5: 275d6bdba34ec81a603f847b69f04908
SHA-256: 215c536ead9de63f74b492be4108db098be1483f0239a8841028e33a7343e6f3
Size: 457.72 kB - python3.14-freethreading-3.14.8-1.el9_8.i686.rpm
MD5: e19fbd97a059deca4f87bebd30f423ff
SHA-256: c69a0c102b03aebdaeb608ab3192f77ebb6f71d5d1ad5a49e067d8943a1c71e2
Size: 19.29 kB - python3.14-freethreading-3.14.8-1.el9_8.x86_64.rpm
MD5: a157bea08bfadae4c5932453cddee53b
SHA-256: 0d4077d883b8efb189928c694271f69321335c5a4dfc89faddf984fe7137b437
Size: 19.30 kB - python3.14-freethreading-debug-3.14.8-1.el9_8.i686.rpm
MD5: 749ec6d0350e47b81916d182915a4081
SHA-256: 8af8c42d604f591e32d2489537258b209d8a3683214addd829f2f1efe1edc0d0
Size: 4.20 MB - python3.14-freethreading-debug-3.14.8-1.el9_8.x86_64.rpm
MD5: 336460068c1b3d59e38ee2ab4c5da249
SHA-256: ed08f40f3b9500c66c89cda14b2ca5a56fdd4ac4e215c7cafd1430cbbddd06b2
Size: 4.33 MB - python3.14-freethreading-devel-3.14.8-1.el9_8.i686.rpm
MD5: 4cb1f24f4565e38153845d28533c237f
SHA-256: 85f91c4da35c02996467631108713950ae4e912ed1df9a4ec2e70143eed23c96
Size: 444.28 kB - python3.14-freethreading-devel-3.14.8-1.el9_8.x86_64.rpm
MD5: 30dd31e1f25e64b88b33c2020dd92df7
SHA-256: a8f4487b652acccab72105c00867100a76d299a0a34d78b4b9cd038849cd6127
Size: 444.20 kB - python3.14-freethreading-idle-3.14.8-1.el9_8.i686.rpm
MD5: 138d8515cd0add3fa5687ce3a39d614a
SHA-256: 78cae897aba2904fe6e3ab821093cc6584abbd6d0d9fc9eb2925338a37d73d59
Size: 1.14 MB - python3.14-freethreading-idle-3.14.8-1.el9_8.x86_64.rpm
MD5: 766777890015bd6b863922242559915d
SHA-256: 6deeafaab0d7f42256d7b14b68f76004a708ed447b8825555c3a5ff3b96b2a84
Size: 1.14 MB - python3.14-freethreading-libs-3.14.8-1.el9_8.i686.rpm
MD5: 0326ed2ec077529787e3057c60026804
SHA-256: 2098c88416a895d87b1f9b745a367272efe13aad8f137bf1cb40a80f8ff63895
Size: 10.71 MB - python3.14-freethreading-libs-3.14.8-1.el9_8.x86_64.rpm
MD5: 0f80054e7cedb612d4c806747603d1cb
SHA-256: 06bffd0c476ea23afe4c4bc5d8571468d41c253150708c8d30962f342fc99e58
Size: 10.62 MB - python3.14-freethreading-test-3.14.8-1.el9_8.i686.rpm
MD5: 198b5f6398d1a9b28aee709b280ddc09
SHA-256: d4faec7dfcc0dd3ccb6b52def61e6ffafbef5f25b75f1adb2895dce2e2b5a658
Size: 18.72 MB - python3.14-freethreading-test-3.14.8-1.el9_8.x86_64.rpm
MD5: 5b925e46761e67b449b192ffe2e6b70d
SHA-256: f97367f95bd90f6dfc5da46fc1ce55aa76ae0df7ea287fbc11bff7efb402c831
Size: 18.71 MB - python3.14-freethreading-tkinter-3.14.8-1.el9_8.i686.rpm
MD5: 604d38f9f54e9e734d72b47df7c94f36
SHA-256: 177d2b4e214ab71307fa9a1ab9c534a279934cdbed8d5151b77c05d779fb4d1d
Size: 405.81 kB - python3.14-freethreading-tkinter-3.14.8-1.el9_8.x86_64.rpm
MD5: 65042445f9c462254b8dd345015f3728
SHA-256: 28906cf8f3a935ca41f6bace540d54488bc2d5e6cda7cf26d6b992ecc813628d
Size: 404.73 kB - python3.14-idle-3.14.8-1.el9_8.i686.rpm
MD5: f511532f516af1ae525bb4040ae2c8ce
SHA-256: 6038b41d3e27e16caf05fed6710c24e13db89c0f499f5ef971c0bc5e00b62fe7
Size: 1.14 MB - python3.14-idle-3.14.8-1.el9_8.x86_64.rpm
MD5: f3f40d2f5a2f0b9798801b9b82c431ed
SHA-256: efe0a6dd0191f3d4349103684ea60be88cc03734fd1346fbc503c083dd1a0f7c
Size: 1.14 MB - python3.14-libs-3.14.8-1.el9_8.i686.rpm
MD5: 97d87c58e0b764fdda5e43af00f84954
SHA-256: f7d2a817cd8dfd663dad12a0b59cd1e2da086d96c01ed91b39fc84bd2a1ab61d
Size: 10.52 MB - python3.14-libs-3.14.8-1.el9_8.x86_64.rpm
MD5: 64248914e786998c89db7aba3832f0a8
SHA-256: 0b1ff41aeb09cafa20c0967cf2d613b23dc00fea47041b614ab5f25566656cc3
Size: 10.44 MB - python3.14-test-3.14.8-1.el9_8.i686.rpm
MD5: 6c25a6f5be7e1b0d4b52d63a16e9fbc4
SHA-256: c5ff1e7ef61d3fb1db3dbf92df85af24bd1a987881c7c32eb39659dd0e921df7
Size: 18.70 MB - python3.14-test-3.14.8-1.el9_8.x86_64.rpm
MD5: 8b75ed141503ca9d93c06feb07d93e4d
SHA-256: 423beffb4d41f00a772b42f230cc8b196eb6e0cd09d4021ffe94535a5afb54d7
Size: 18.71 MB - python3.14-tkinter-3.14.8-1.el9_8.i686.rpm
MD5: 37cbb6cf7caf14f9e2b90943c11df3ba
SHA-256: 016e8dad63ce9e14c6aab32048ce3dfeb43b6eb0b1e1b31ed8fa1a0b14cef10a
Size: 406.00 kB - python3.14-tkinter-3.14.8-1.el9_8.x86_64.rpm
MD5: 94dda824bc66eeef9b46cc71d28a9662
SHA-256: f71a786f85174927dd52097198d7273ef42423d83516dae5639ffe5159d3ad9a
Size: 404.72 kB