注意: 雖然 JavaScript 對於本網站不是必需的,但您與內容的互動將受到限制。請開啟 JavaScript 以獲得完整的體驗。

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-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 596 中指定的釋出日程,Python 3.9 目前處於其生命週期的“僅安全修復”階段:3.9 分支只接受安全修復,並且這些修復將以不定期、僅原始碼的形式釋出,直至 2025 年 10 月。Python 3.9 不再接收常規的漏洞修復,也不再為其提供二進位制安裝程式。Python 3.9.13 是 Python 3.9 最後一個提供二進位制安裝程式的完整漏洞修復版本

完整更新日誌

檔案

版本 作業系統 描述 MD5 校驗和 檔案大小 Sigstore GPG
Gzip 壓縮的原始碼包 原始碼釋出版 896c19e5815ba990a3d1261502ea9f83 24.9 MB .sigstore SIG
XZ 壓縮的原始碼包 原始碼釋出版 bdcda0fdb99e7e17018f6886fae5e1fd 18.7 MB .sigstore SIG