Python 3.9.20
发布日期: 2024 年 9 月 6 日
这是一个 Python 3.9 的安全版本
注意:您正在查看的版本是 Python 3.9.20,它是旧版 3.9 系列的安全漏洞修复版本。Python 3.12 现在是 Python 3 的最新功能发布系列。 在此处获取最新的 3.12.x 版本。
此版本中的安全内容
- gh-123678 和 gh-116741:将捆绑的 libexpat 升级到 2.6.3 以修复 CVE-2024-28757、CVE-2024-45490、CVE-2024-45491 和 CVE-2024-45492。
- gh-118486:Windows 上的
os.mkdir()
现在接受0o700
的 mode 来限制新目录的当前用户。这修复了影响tempfile.mkdtemp()
的 CVE-2024-4030,在基本临时目录比默认目录更宽松的情况下。 - 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 -i
以及python -m asyncio
。相关事件是cpython.run_stdin
。 - gh-122133:在 Windows 等无法使用
AF_UNIX
的平台上,验证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
的实例。 - gh-112275:现在修复了在 fork 时涉及
posixmodule.c
中pystate.c
的HEAD_LOCK
的死锁。
没有安装程序
根据 PEP 596 中指定的发布日历,Python 3.9 现在处于其生命周期的“仅安全修复”阶段:3.9 分支仅接受安全修复,并且这些修复程序的发布不定期地以仅源代码形式进行,直到 2025 年 10 月。Python 3.9 不再接收常规的错误修复,并且不再为其提供二进制安装程序。Python 3.9.13 是 Python 3.9 的最后一个完整错误修复版本,带有二进制安装程序。
文件
版本 | 操作系统 | 描述 | MD5 校验和 | 文件大小 | GPG | Sigstore | |
---|---|---|---|---|---|---|---|
Gzip 压缩的源代码压缩包 | 源代码发布 | 896c19e5815ba990a3d1261502ea9f83 | 24.9 MB | SIG | .sigstore | ||
XZ 压缩的源代码压缩包 | 源代码发布 | bdcda0fdb99e7e17018f6886fae5e1fd | 18.7 MB | SIG | .sigstore |