概要
Python 3.14系の8回目のメンテナンスリリースとなるPython 3.14.8が2026年9月30日に公開された。今回は通常のメンテナンスリリースとは異なり、SSLコンテキストの処理、tarfileおよびzipfileのアーカイブ展開処理、urllibの認証情報管理に関連する合計9件のセキュリティ修正を含む緊急リリースとなっており、該当バージョンの利用者には速やかなアップデートが推奨されている。142人の開発者による約354件のバグ修正・ビルド改善・ドキュメント更新を含む通常のメンテナンス作業の一部として配布された。
修正された主な脆弱性
最も深刻度が高いとみられるのが、sslモジュールにおける2件の脆弱性だ。CVE-2026-19445 (gh-156293) は、TLSサーバー側でsni_callbackが別のSSLContextに切り替えた際に元のコンテキストが参照されなくなることで発生するuse-after-freeの欠陥で、クラッシュや不正なメモリアクセスにつながる恐れがある。CVE-2026-19553 (gh-156793) は、SSLContext.wrap_bio()がserver_hostnameパラメータの検証を欠いていた問題で、wrap_socket()と同様の検証を行うよう修正された。
アーカイブ処理ではtarfileに2件の脆弱性が見つかった。CVE-2026-82049 (gh-157190) は、ハードリンクをシンボリックリンクへ張ることで展開フィルタを回避し、ファイルの改変や内容の漏洩を許してしまう問題。CVE-2026-19672 (gh-155999) は、「../evil/../dest/sub/file」のように一旦展開先の外に出て戻ってくるパス名を使うことで、展開先ディレクトリの外にディレクトリを作成できてしまう展開フィルタのバイパスだ。zipfileについても、bzip2・LZMA・Zstandardで圧縮されたメンバーを展開する際にメモリを使い果たす可能性があるCVE-2026-15310 (gh-156002) が修正され、deflate方式と同様にデコンプレッション時のデータ量に上限が設けられた。
さらに、urllib.request.HTTPPasswordMgrがURLスキームを区別せずに認証情報を送信してしまうCVE-2026-15806 (gh-155694)、stringprepモジュールがRFC 3454で定義された範囲を超えたUnicodeコードポイント属性を扱っていたCVE-2026-17084 (gh-155292) も修正対象に含まれる。加えてセキュリティ関連の更新として、バンドルされているExpatが2.8.5に、Windows・macOS・Android・iOS向けのOpenSSLが3.5.9にそれぞれアップデートされた。
今後の対応
これら9件の修正はいずれもセキュリティ上の懸念に対応するものであり、サーバー証明書検証やアーカイブファイルの展開、HTTP認証情報の扱いなど幅広い領域に影響する。Python 3.14系を利用している開発者は早急に3.14.8へのアップデートを行うことが推奨される。なお、macOS 27.0環境ではIDLEやtkinterがハングする可能性がある既知の問題も報告されており、該当環境の利用者は注意が必要だ。