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

Python 3.9.24

釋出日期: 2025年10月9日

這是 Python 3.9 的一個安全修復版本

注意:您正在檢視的是 Python 3.9.24,這是舊版 3.9 系列的一個安全修復版本Python 3.14 現在是 Python 3 最新的功能釋出系列。在此處獲取 3.14.x 的最新版本

此版本中的安全內容

XML 相關

歸檔相關

  • gh-130577tarfile 現在會驗證歸檔檔案,以確保成員偏移量為非負數。
  • gh-139700:現在會檢查 zip64 中央目錄記錄末端的一致性。如果 ZIP 檔案前沒有字首位元組,則增加了對帶有“zip64 可擴充套件資料”記錄的支援。

HTML 解析相關

  • gh-135661:根據 HTML5 標準,修復了 html.parser.HTMLParser 中對開始和結束標籤的解析。
  • 不再接受在 </ 和標籤名之間存在空白字元。例如:</ script> 不會結束指令碼區域。
  • 垂直製表符 (\v) 和非 ASCII 空白字元不再被識別為空白。唯一的空白字元是 \t\n\r\f 和空格。
  • 空字元 (U+0000) 不再結束標籤名。
  • 結束標籤中標籤名後的屬性和斜槓現在將被忽略,而不是在帶引號的屬性值中第一個 > 後終止。例如:</script/foo=">"/>
  • 在起始標籤和結束標籤中,最後一個屬性與閉合的 > 之間的多個斜槓和空白字元現在將被忽略。例如:<a foo=bar/ //>
  • 屬性名和值之間的多個 = 不再被合併。例如:<a foo==bar> 會產生一個值為“=bar”的“foo”屬性。
  • gh-135661:根據 HTML5 標準,修復了 html.parser.HTMLParser 中 CDATA 部分的解析:] ]>]] > 不再結束 CDATA 部分。添加了私有方法 _set_support_cdata(),可用於指定如何解析 <[CDATA[——是作為外來內容(SVG 或 MathML)中的 CDATA 部分,還是作為 HTML 名稱空間中的無效註釋。
  • gh-102555:根據 HTML5 標準,修復了 html.parser.HTMLParser 中的註釋解析。--!> 現在會結束註釋。-- > 不再結束註釋。支援異常結束的空註釋 <--><--->
  • gh-135462:修復了在 html.parser.HTMLParser 中處理特殊構造的輸入時出現的二次複雜度問題。現在會根據 HTML5 規範處理檔案結束錯誤——註釋和宣告會自動閉合,標籤則被忽略。
  • gh-118350:修復了 html.parser.HTMLParser 對可轉義原始文字模式(“textarea”和“title”元素)的支援。
  • gh-86155html.parser.HTMLParser.close()<script> 標籤未閉合時不再丟失資料。

其他

無安裝程式

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

完整更新日誌

檔案

版本 作業系統 描述 MD5 校驗和 檔案大小 Sigstore GPG
Gzip 壓縮的原始碼包 原始碼釋出版 86920338d557f26b01c9c4ebe1a1db09 25.3 MB .sigstore SIG
XZ 壓縮的原始碼包 原始碼釋出版 d778f94c0f141ef1d9945f7452fa914d 19.2 MB .sigstore SIG