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-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 引數,以將新目錄的訪問許可權限制為當前使用者。這修復了 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 -i和python -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.c的HEAD_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 | ||
