Asayomu Tech
注目★★★★★GitHub Advisory

PHP Standard Library の HTTP/2 サーバーに content-length 検証漏れ、リクエストスマグリング脆弱性

30秒で把握

  • 1PSL `Psl\H2\ServerConnection` が HTTP/2 content-length 検証欠落、リクエストスマグリング脆弱性発生
  • 2悪意クライアントが宣言より多い/少ない DATA 送信でサイズ制限迂回や異常動作を引き起こし可能
  • 36.1.2/6.2.1 でパッチ適用・低水準 API 直接運用のチームはバージョン確認と更新を即実施

要約

PHP Standard Library (PSL) の `Psl\H2\ServerConnection` が HTTP/2 HEADERS フレームの content-length ヘッダーと実際の DATA フレームのバイト数を照合していない脆弱性が判明した。悪意あるクライアントはより多い DATA バイトを送信してアプリケーションレベルのサイズ制限を迂回するか、宣言より少ないバイトを送信してストリームを早期に閉じることが可能。脆弱性は `Psl\H2\ServerConnection` を直接使用して untrusted な客側トラフィックを受け入れるユーザーだけが影響を受ける (高水準 API の `Psl\HTTP\Server` は未リリース)。バージョン 6.1.2 と 6.2.1 でパッチ済み、content-length 検証とストリーム別 DATA フレーム長の追跡を実装した。

あなたへの影響

PSL の低水準 H2 API を直接運用している場合は 6.1.2/6.2.1 への即時アップグレード必須。

推奨:高水準 `Psl\HTTP\Server` API の利用者は対象外だが、本番環境で低水準 API を使用している場合は RFC 9113 §8.1.1 準拠の検証が抜けていないか確認を。

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

関連する記事

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