Asayomu Tech
注目★★★★★GitHub Advisory

python-multipart: セミコロン区切りパースのO(N²)脆弱性でCPU DoS (CVE-2026-53539)

30秒で把握

  • 1CVE-2026-53539: セミコロン区切りパースがO(B²)となりCPU DoSを誘発
  • 21 MiBボディで約10¹¹回バイト比較・数秒のCPU消費・ワーカー枯渇の恐れ
  • 3QuerystringParserの二段階separator検索が根本原因・修正版への更新が対処

要約

python-multipartのQuerystringParserに、セミコロン区切りのクエリ文字列解析でCPU消費が二乗オーダーになる脆弱性(CVE-2026-53539)が判明した。`application/x-www-form-urlencoded`ボディをパースする際、フィールドセパレータを探す処理が毎フィールドごとにバッファ全体の`&`スキャンを失敗させてから`;`を探す二段階方式のため、O(B²)の計算量が発生する。1 MiBの`a;`繰り返しボディで約10¹¹回のバイト比較が発生し、1リクエストあたり数秒のCPU消費を引き起こす。少数の並行リクエストでワーカープロセスを枯渇させられる。

あなたへの影響

python-multipartを使用しているFastAPIやStarletteベースのサービスは、外部からのフォームデータ受信箇所でDoSリスクがあるため、修正バージョンへのアップグレードを確認しておくとよい。

推奨:スコアは中程度だが、セミコロン区切りのリクエストを受け付ける構成では影響が顕在化し得る。

詳細を読む → 元記事へ※ 本文は元記事をご確認ください (asayomu は要約のみ提供)

関連する記事

※ 外部記事の権利は原著作者に帰属します。著作権削除要請は copyright@asayomu.jp までご連絡ください(受領確認 24h・実処理 72h 以内)。