注意: 虽然 JavaScript 对于本网站不是必需的,但您与内容的互动将受到限制。请开启 JavaScript 以获得完整的体验。

Python 3.8.20

发布日期: 2024年9月6日

这是 Python 3.8 的一个安全版本

请注意:您正在查看的版本是 Python 3.8.20,这是一个针对旧版 3.8 系列的安全漏洞修复版本Python 3.12 现在是 Python 3 最新的功能发布系列。 在此处获取 3.12.x 的最新版本

此版本中的安全内容

  • gh-123678gh-116741:将捆绑的 libexpat 升级到 2.6.3,以修复 CVE-2024-28757CVE-2024-45490CVE-2024-45491CVE-2024-45492
  • gh-118486:Windows 上的 os.mkdir() 现在接受 0o700mode 参数,以将新目录的访问权限限制为当前用户。这修复了 CVE-2024-4030,该漏洞在基础临时目录的权限比默认设置更宽松的情况下会影响 tempfile.mkdtemp()
  • gh-123067:修复了 http.cookies 在解析带有反斜杠的 " 引号引起来的 cookie 值时存在的二次复杂度问题。修复了 CVE-2024-7592。
  • gh-113171:修复了 IPv4Address.is_private、IPv4Address.is_global、IPv6Address.is_private、IPv6Address.is_global 中的多个误报和漏报问题。修复了 CVE-2024-4032。
  • gh-67693:修复了 urllib.parse.urlunparse()urllib.parse.urlunsplit() 对于路径以多个斜杠开头且没有 authority 部分的 URI 的处理问题。修复了 CVE-2015-2104。
  • gh-121957:修复了在 Python 交互式使用中缺失的审计事件,现在对于 python -ipython -m asyncio 也能正确触发。涉及的事件是 cpython.run_stdin
  • gh-122133:在不支持 AF_UNIX 的平台(如 Windows)上,为 socket.socketpair() 的后备实现验证套接字连接。
  • gh-121285:从 tarfile 对 hdrcharset、PAX 和 GNU稀疏文件头的解析中移除了回溯操作。对应 CVE-2024-6232。
  • gh-114572:当 ssl.SSLContext 在多个线程间共享时,ssl.SSLContext.cert_store_stats()ssl.SSLContext.get_ca_certs() 现在可以正确地锁定对证书存储的访问。
  • gh-102988:当遇到无效电子邮件地址时,email.utils.getaddresses()email.utils.parseaddr() 现在会在更多情况下返回二元组 ('', ''),而不是可能不准确的值。为这两个函数添加了可选的 strict 参数:使用 strict=False 可获得旧的行为,接受格式错误的输入。可以使用 getattr(email.utils, 'supports_strict_parsing', False) 来检查 strict 参数是否可用。这改进了对 CVE-2023-27043 的修复。
  • gh-123270:对 zipfile.Path 中的名称进行清理,以避免无限循环(gh-122905),同时不破坏使用合法字符的内容。对应 CVE-2024-8088。
  • gh-121650:包含嵌入换行符的 email 标头现在在输出时会被加上引号。generator 现在将拒绝序列化(写入)不安全折叠或分隔的标头;请参阅 verify_generated_headers。对应 CVE-2024-6923。
  • gh-119690:修复了由 _winapi.CreateFile_winapi.CreateNamedPipe 引发的审计事件中的数据类型混淆问题。
  • gh-116773:修复了“<_overlapped.Overlapped object at 0xXXX> still has pending operation at deallocation, the process may crash”(<_overlapped.Overlapped 对象在 0xXXX> 释放时仍有挂起操作,进程可能崩溃)的问题实例。
  • gh-112275:修复了在 fork 时 posixmodule.c 中涉及 pystate.cHEAD_LOCK 导致的死锁问题。

无安装程序

根据 PEP 569 中规定的发布日程,Python 3.8 目前处于其生命周期的“仅安全修复”阶段:3.8 分支只接受安全修复,并且这些修复将以不定期、仅源码的形式发布,直到2024年10月。Python 3.8 不再接收常规的错误修复,也不再为其提供二进制安装程序。Python 3.8.10 是 Python 3.8 最后一个提供二进制安装程序的完整错误修复版本

完整更新日志

文件

版本 操作系统 描述 MD5 校验和 文件大小 Sigstore GPG
Gzip 压缩的源码包 源码发布版 7e0ff9088be5a3c2fd9b7d8b4b632b5e 23.9 MB .sigstore SIG
XZ 压缩的源码包 源码发布版 745478c81d6382cf46b5e7ad89e56008 18.1 MB .sigstore SIG