Python 3.9.24
Release Date: 9. Okt. 2025
Dies ist eine Sicherheitsveröffentlichung von Python 3.9
Hinweis: Die hier angezeigte Version ist Python 3.9.24, ein Sicherheits-Bugfix-Release für die ältere 3.9-Serie. Python 3.14 ist jetzt die neueste Feature-Release-Serie von Python 3. Holen Sie sich hier die neueste Version von 3.14.x.
Sicherheitsinhalte dieser Veröffentlichung
XML-bezogen
- gh-139312: Gebündeltes libexpat auf 2.7.3 aktualisiert, um CVE-2025-59375 zu beheben
- gh-139400:
xml.parsers.expat: Sichergestellt, dass übergeordnete Expat-Parser nur dann garbage-collected werden, wenn sie nicht mehr von durchExternalEntityParserCreate()erstellten Unter-Parsern referenziert werden.
Archiv-bezogen
- gh-130577:
tarfilevalidiert jetzt Archive, um sicherzustellen, dass Member-Offsets nicht negativ sind. - gh-139700: Überprüfung der Konsistenz des ZIP64-Ende-des-Zentralverzeichnis-Eintrags. Unterstützung für Einträge mit „ZIP64 erweiterbare Daten“ hinzugefügt, wenn dem ZIP-File keine Bytes vorangestellt sind.
HTML-Parsing-bezogen
- gh-135661: Parsen von Start- und End-Tags in
html.parser.HTMLParsergemäß dem HTML5-Standard behoben. - Leerzeichen werden zwischen
</und dem Tag-Namen nicht mehr akzeptiert. Z.B. beendet</ script>den Skriptabschnitt nicht. - Vertikale Tabulatoren (
\v) und Nicht-ASCII-Leerzeichen werden nicht mehr als Leerzeichen erkannt. Die einzigen Leerzeichen sind\t\n\r\fund Leerzeichen. - Null-Zeichen (U+0000) beenden den Tag-Namen nicht mehr.
- Attribute und Schrägstriche nach dem Tag-Namen in End-Tags werden jetzt ignoriert, anstatt nach dem ersten
>in einem zitierten Attributwert zu enden. Z.B.</script/foo=">"/>. - Mehrere Schrägstriche und Leerzeichen zwischen dem letzten Attribut und dem schließenden
>werden nun sowohl in Start- als auch in End-Tags ignoriert. Z.B.<a foo=bar/ //>. - Mehrere
=zwischen Attributnamen und Wert werden nicht mehr zusammengefasst. Z.B. erzeugt<a foo==bar>das Attribut „foo“ mit dem Wert „=bar“. - gh-135661: Behebt das Parsen von CDATA-Abschnitten in
html.parser.HTMLParsergemäß dem HTML5-Standard:] ]>und]] >beenden den CDATA-Abschnitt nicht mehr. Fügt die private Methode_set_support_cdata()hinzu, mit der angegeben werden kann, wie<[CDATA[geparst werden soll – als CDATA-Abschnitt in fremdem Inhalt (SVG oder MathML) oder als ungültiger Kommentar im HTML-Namensraum. - gh-102555: Behebt das Parsen von Kommentaren in
html.parser.HTMLParsergemäß dem HTML5-Standard.--!>beendet nun den Kommentar.-- >beendet den Kommentar nicht mehr. Unterstützt abnormal beendete leere Kommentare<-->und<--->. - gh-135462: Quadratische Komplexität bei der Verarbeitung speziell präparierter Eingaben in
html.parser.HTMLParserbehoben. Fehler am Ende der Datei werden jetzt gemäß den HTML5-Spezifikationen behandelt – Kommentare und Deklarationen werden automatisch geschlossen, Tags werden ignoriert. - gh-118350: Unterstützung für den escapable raw text mode (Elemente „textarea“ und „title“) in
html.parser.HTMLParserbehoben. - gh-86155:
html.parser.HTMLParser.close()verliert keine Daten mehr, wenn der<script>-Tag nicht geschlossen ist.
Andere
- gh-121227: Eine
SSL.SSLErrorwird nun ausgelöst, wenn ein leeres protocols-Argument anssl.SSLContext.set_npn_protocols()übergeben wird, um CVE-2024-5642 zu beheben - gh-135374: Aktualisiert die gebündelte Kopie von setuptools auf 79.0.1, um CVE-2025-47273 und CVE-2024-6345 zu beheben.
Keine Installer
Gemäß dem Release-Kalender, der in PEP 596 festgelegt ist, befindet sich Python 3.9 nun in der Phase "nur Sicherheitsfixes" seines Lebenszyklus: Der 3.9-Zweig akzeptiert nur noch Sicherheitsfixes, und deren Veröffentlichungen erfolgen unregelmäßig in reiner Quellform bis Oktober 2025. Python 3.9 erhält keine regulären Fehlerbehebungen mehr, und binäre Installer werden dafür nicht mehr bereitgestellt. Python 3.9.13 war die letzte vollständige Bugfix-Veröffentlichung von Python 3.9 mit binären Installern.
Dateien
| Version | Betriebssystem | Beschreibung | MD5 Summe | Dateigröße | Sigstore | GPG | |
|---|---|---|---|---|---|---|---|
| Gzip-komprimiertes Quell-Tarball | Quellcode-Veröffentlichung | 86920338d557f26b01c9c4ebe1a1db09 | 25,3 MB | .sigstore | SIG | ||
| XZ-komprimierter Quell-Tarball | Quellcode-Veröffentlichung | d778f94c0f141ef1d9945f7452fa914d | 19,2 MB | .sigstore | SIG | ||
