Pythonの脆弱性情報まとめ

2026.11.01 22:23 更新 Python本体と主なパッケージ(2026年の公表とKEV掲載が中心)

更新日別の件数直近14日・深刻度別

新規公表と更新直近14日

新規公表 103件 / 更新 130件

深刻度×脆弱性の種類押すと絞り込み

脆弱性の種類緊急高中低未評価
コード実行5881––
ファイルの読み取り・上書き19542–
サービス停止(DoS)11512––
認証・認可の回避7481–
XSS・インジェクション843––
SSRF・リダイレクト3–41–
情報の漏えい213––
メモリ破壊–13––
その他2113192–

Pythonの脆弱性は、本体(CPython)の標準ライブラリと、pipで入れるパッケージに分けて確かめます。本体は使っている系列がサポート中かと最新版かを、パッケージは間接依存も含めて実際に入っている版を見ます。

このページの要点
  • Python 3.10は2026年10月1日にサポートが終わりました。10月25日のsslの修正(CVE-2026-115557)は3.11以上にだけ出ています。
  • Brotli・Starlette・LiteLLM・Langflowは、米CISAが悪用を確認した一覧(KEV)に載っています。
  • パッケージはpip-auditかuv auditで照合し、本番で動いている版と、修正版が求めるPythonの版も確かめます。

01Pythonで今確かめたい脆弱性

Pythonの本体と、よく使われるパッケージのうち、米CISAの悪用確認の一覧(KEV)に載ったもの、深刻度が緊急のものを挙げます。2026年11月1日時点の内容です。[1]

脆弱性・問題主な対象・条件修正・対応詳細
Python本体のssl:侵害されたeMudhraの中間CA鍵
CVE-2026-115557
HTTPSで外部に接続するPython。修正前は、失効の確認を設定していないと、侵害された鍵の証明書を受け入れるおそれがあります。PSFの評価でCVSS 4.0の9.4(緊急)。KEVには載っていません。[2]3.11.18・3.12.16・3.13.18・3.14.10・3.15.2。3.10以前に修正版はありません。[2][3]CVEの記録
Brotliの展開処理
CVE-2026-111497
外部から受け取った圧縮データを展開する環境。10月27日(米国時間)にKEVに追加。brotli 1.2.1・brotlicffi 1.2.1.0確認方法の詳細
StarletteのBadHost
CVE-2026-48710
request.urlのパスでアクセスを判定している場合。FastAPIの下でも動きます。9月2日にKEVに追加。1.0.1以上確認方法の詳細
LiteLLMのプロキシ
CVE-2026-59822ほか
プロキシとして起動している環境。2026年はSQLインジェクション、コマンド実行、MCPの認証不備の3件がKEVに追加。1.106.2以降の版を==で固定(提供元の案内)切り分けの詳細
Langflowの認証なしコード実行
CVE-2026-9198
Langflow OSS 1.0.0〜1.10.0の既定の構成。CVSS 3.1の9.8(IBMの評価)。8月4日(米国時間)にKEVに追加。[4]1.10.1以上。IBMは回避策を「なし」としています。[4]IBMの告知
PillowのFlashPix読み込み
CVE-2026-112398
olefileを入れた環境で、受け取った画像を開く処理。GitHubの評価でCVSS 4.0の9.2(緊急)。PoCは公開済みで、KEVには載っていません。13.0.0(Python 3.11以上が必要)[5]対象の詳細

2026年のKEVには、ほかにMLflow(CVE-2026-64849、3.15.0で修正)とRay(CVE-2025-62593)も載っています。Langflowは2026年に5件がKEVに追加されているため、1件ずつではなく最新版への更新で確かめます。[1]

02Pythonのサポート期限と更新先

Pythonは、新しい系列が年に1回出て、約2年はバグ修正、その後は公開から5年までセキュリティ修正だけが出ます。[6][7]

系列状態サポート終了最新版(11月1日時点)
3.15バグ修正2031年10月(予定)3.15.2
3.14バグ修正2030年10月(予定)3.14.10
3.13セキュリティ修正のみ2029年10月(予定)3.13.18(ソースのみ)
3.12セキュリティ修正のみ2028年10月(予定)3.12.16(ソースのみ)
3.11セキュリティ修正のみ2027年10月(予定)3.11.18(ソースのみ)
3.10終了2026年10月1日3.10.22(最終)
3.9終了2025年10月31日3.9.25(最終)

3.10は10月1日に終了し、10月25日のssl・tarfileの修正は出ていません。[8]セキュリティ修正のみの系列は、python.orgのWindows・macOS向けインストーラーが出ません。3.13は10月21日の3.13.17が最後のインストーラーで、3.13.18はソースだけです。インストーラーで入れている場合、今の修正を受け取れるのは3.14.10か3.15.2です。[3]

OSのパッケージやコンテナのイメージで入れたPythonは、提供元が修正を取り込むため、番号がpython.orgと一致しないことがあります。その場合は提供元の告知で確かめます。

03Pythonの依存関係の脆弱性を確かめる方法

定番はPyPAのpip-auditです。既定ではPyPIの脆弱性情報と照合し、-s osvでOSV.devも使えます。[9]

ターミナル
# 確かめたい仮想環境で実行する
python -m pip install pip-audit
python -m pip_audit

# requirements.txt を確かめる(すべて == で固定している場合)
pip-audit --no-deps -r requirements.txt

# pylock.*.toml(PEP 751のlockファイル)を確かめる
pip-audit --locked .

uvを使うプロジェクトでは、uv.lockを読むuv auditがあります。2026年6月に追加された機能で、提供元は試験段階(preview)としています。[10]

ターミナル
# uv.lock を更新せずに確かめる
uv audit --frozen

# pip-audit で確かめる場合
uv export --format requirements.txt --frozen -o requirements.txt
pip-audit --no-deps -r requirements.txt

パッケージの版だけを見たいときは、次のように表示します。

ターミナル
python -c "import sys; print(sys.version)"
python -m pip show starlette pillow brotli
# 何がその版を入れたか(uv)
uv tree --invert --package starlette

# 動いているコンテナの版を書き出して照合する
docker exec <コンテナ名> python -m pip freeze > prod.txt
pip-audit --no-deps -r prod.txt

04自分の環境が対象かを確かめる手順

  1. lockファイルから見る:requirements.txt・uv.lock・poetry.lockに書かれた版は、間接依存を含めて実際に入る版です。pyproject.tomlの範囲指定(>=)だけでは、どの版が入っているかは分かりません。
  2. 間接依存を直接確かめる:StarletteはFastAPIの下に、BrotliはHTTPクライアントの下に入ります。上のパッケージを上げても下の版が古いまま残ることがあるため、pip showの「Required-by」やuv tree --invertで、どこから入ったかを確かめます。
  3. 本番で動いている版を見る:手元の仮想環境と本番は別です。動いているコンテナからpip freezeで版を書き出し、上のpip-auditで照合します。イメージを作り直していなければ、lockファイルを直しても本番は古いままです。
  4. Pythonの版が更新を止めることがある:Pillow 13.0.0はPython 3.11以上が必要です。[5]3.10の環境でpip install -U pillowを実行しても、エラーにならずに12.3.0のまま残ります。パッケージの修正版が求めるPythonの版も確かめます。
  5. 本体の修正はpip-auditでは見えない:pip-auditが照合するのはパッケージで、Python本体のsslやtarfileの修正はsys.versionと表で確かめます。

05Pythonの解説記事

Python公表 2026-10-23

TwistedのHTTP/2の脆弱性、1接続でCPUを使い切らせるおそれと、HTTP/2が有効かの確かめ方・26.10.0への更新(GHSA-vpp8-g58w-m8mp)

Python向けTwistedのHTTP/2サーバーに、認証なしの1接続でCPUを使い切らせる脆弱性があり、10月30日に正式版26.10.0で直りました。HTTP/2が動く条件(h2とTLS)の確かめ方、修正の効き方、CVE番号の扱い、Python 3.9の環境での注意を説明します。

Python公表 2026-10-22

Brotliの脆弱性の確認方法、PythonとNode.jsで対象かを確かめて直す(CVE-2026-111497、コード実行のおそれ)

圧縮形式Brotliの展開処理の脆弱性CVE-2026-111497(HTTP2Shell)は、米CISAが悪用を確認しています。Pythonのbrotli・brotlicffi、Node.jsの同梱版などで、自分の版と構成が対象かを確かめる方法と修正版を、言語ごとに説明します。

Python公表 2026-10-18

Pillowの脆弱性、olefile入りの環境で細工したFlashPix画像を開くとコード実行のおそれ(CVE-2026-112398、修正は13.0.0)

PythonのPillowの脆弱性CVE-2026-112398は、olefileを入れた環境で細工したFlashPix画像をImage.openで開くと、ヒープの範囲外書き込みで任意のコード実行に至るおそれがあります。対象かの見分け方、13.0.0への更新、すぐ上げられないときの対処を説明します。

Python公表 2026-09-30

LiteLLMの脆弱性、内部ユーザーが管理者に昇格するおそれ。KEVの認証不備と不正な1.107.0もバージョンで確かめる

LiteLLMのプロキシに、internal_userの権限から管理者に昇格してコマンドを実行できる脆弱性CVE-2026-114612。KEVに載った認証不備CVE-2026-59822と、10月21日に配布された不正な1.107.0を、使っている版で切り分ける手順と、上げる先の版を説明します。

Python公表 2026-05-22

Starletteの脆弱性BadHost、Hostヘッダーでパスによる認証の確認を回避されるおそれ。FastAPIを上げても古い版が残る場合の確かめ方

Starletteの脆弱性CVE-2026-48710(BadHost)は、細工したHostヘッダーでrequest.url.pathを偽り、パスで判定するアクセスの確認を回避されるおそれがあります。9月2日にKEVに追加されました。FastAPI・vLLM・LiteLLMの下で古いStarletteが残る例と、間接依存の確かめ方を説明します。

セキュリティ対策サービス一覧AIを悪用した攻撃への対策について、相談、リスクの診断、システムの改修を支援します。必要なものだけを選んで依頼できます。

よくある質問

FastAPIを最新にすれば、Starletteの脆弱性も直りますか?

直らない場合があります。FastAPIは古いStarletteでも動く範囲を指定しているため、pipでFastAPIだけを上げても、入っているStarletteがそのまま残ることがあります。pip show starletteで版を直接確かめ、1.0.1以上にします。

Python 3.10のまま、パッケージだけ更新すれば足りますか?

足りません。3.10は2026年10月1日にサポートが終わり、10月25日のssl・tarfileの修正は出ていません。Pillow 13.0.0のように、修正版が3.11以上を求めるパッケージもあります。

pip-auditで何も出なければ、対象外と考えてよいですか?

照合したのは、実行した環境やファイルに書かれたパッケージだけです。本番のコンテナ、Python本体の版、OSが入れたライブラリは別に確かめます。

出典・参考資料

  1. CISA:Known Exploited Vulnerabilities Catalog2026-10-30版(米国時間) / Brotli・Starlette・LiteLLM・Langflow・MLflow・Rayの追加日
  2. CVE-2026-115557(採番機関:PSF)2026-10-24 / sslの拒否リスト、対象と修正版、CVSS 4.0の9.4
  3. python.org:Python 3.13.182026-10-25 / eMudhraの対応、tarfileの修正、インストーラーが無いこと
  4. IBM:Langflow OSSの脆弱性(CVE-2026-9198)2026-07-02(8月17日更新) / 対象1.0.0〜1.10.0、修正版1.10.1、回避策なし
  5. PyPI:pillow 13.0.02026-10-17 / Python 3.11以上が必要
  6. Python Developer's Guide:Status of Python versions2026-11-01確認 / 系列ごとの状態とサポート終了日
  7. PEP 719:Python 3.13 Release Schedule2026-10-26更新 / 3.13.17が最後のインストーラー、2029年10月まで
  8. python.org:Python 3.10.222026-10-01 / 3.10の最終リリース、以後の更新なし
  9. PyPA:pip-audit2026-11-01確認 / コマンドと照合先、--locked・--no-deps
  10. Astral:Vulnerability and malware checks in uv2026-06-08 / uv auditの追加、試験段階であること