ニュース

「Python」各バージョンに一斉にセキュリティ更新 ~円周率(パイ)の日には間に合わず

Python 3.10.3、Python 3.9.11、Python 3.8.13、Python 3.7.13への更新を

「Python 3.10.3」が公開

 「Python 3.10」から「Python 3.7」まで各バージョンが3月16日、一斉にアップデートされた。以下の脆弱性修正を含むセキュリティアップデートとなっている。

  • CVE番号ベースで15件の脆弱性:「libexpat」をv2.4.1からv2.4.7へ更新して解決
  • CVE-2022-0778:Windows/Mac向けインストーラーに含まれる「OpenSSL」をv1.1.1lから1.1.1nへ更新して対処
  • CVE-2016-3189/CVE-2019-12900:Windows向けインストーラーに含まれる「bzip2」をv1.0.6からv1.0.8へ更新
  • CVE-2022-26488:Windows版インストーラーでPATHに追加を選んだ場合に、正しいパスに修復されているか確認するように
  • CVE-2021-28363:バンドルされている「pip」をv21.2.4からv22.0.4へ更新して解決
  • 「urllib.request」におけるオーソライズのバイパスを修正
  • 「importlib.metadata」におけるREDoS(正規表現のサービス拒否)に対処
  • Windows/Mac向けインストーラーに含まれる「SQLite」をv3.36.0からv3.37.2へ更新

 開発チームは「円周率」(π)にちなんで3月14日を「Py Day」とし、この一斉セキュリティアップデートを実施する計画を立てていた。しかし、直前に「OpenSSL」脆弱性への対処を強いられたこと、Windows版インストーラーのビルド中にコンパイルエラーが見付かったことなどから、リリースが遅れてしまったようだ。

Python 3.10.3

 「Python 3.10.3」は、「Python 3.10」シリーズの最新版。とくに理由がない場合は、このバージョンの利用が推奨されている。前バージョンから220のコミット(コード変更)が行われており、比較的大規模なバグフィックスリリースとなっている。

 「Python 3.10」シリーズは現在、公式サイト「python.org」から無償でダウンロード可能。Windows 10/11の場合は「Microsoft Store」からも入手できる。次回のリリースは6月上旬が予定されている。

Python 3.9.11

 「Python 3.9」シリーズは、5月中旬のリリースが最後のバグフィックス(bugfix)リリースとなる予定。その後はセキュリティのみの修正が行われる。

 「Python 3.9.11」の修正規模は「Python 3.10.3」ほどではないが、それでも163のコミットが行われているとのこと。

Python 3.8.13

 「Python 3.8」のメンテナンスステータスは「security」で、「Python 3.8.13」における修正は基本的にセキュリティ問題に関わるもののみだ。しかし、テストをパスするためにいくつかの不具合も修正されている。サポート期間の終了は2024年10月が予定されている。

Python 3.7.13

 「Python 3.7.13」の修正もセキュリティのみ。「Python 3.7」は2023年6月27日までソースコードのみのリリースが継続される予定。そろそろ後継バージョンへの移行を準備すべきだ。