VU#885548: HTTP/2サーバーにおけるフロー制御の停滞条件によるサービス拒否の脆弱性
サービス拒否の脆弱性が、停止したフロー制御中のリソース消費の誤った処理を行うHTTP/2サーバーに影響を与えます。リモートの認証されていない攻撃者は、フロー制御パラメータを使用してデータ送信を妨げることで、これを悪用できます。これにより、サーバーは応答データを過剰にバッファリングし、メモリ枯渇を引き起こします。HTTP/2は、ウィンドウサイズによって送信者が受信者を圧倒するのを防ぐためにフロー制御を使用します。クライアントは、WINDOW_UPDATEフレームを送信しないか、初期ウィンドウサイズをゼロに設定することで、このフローを停止させることができます。一部のサーバー実装では、送信できない場合でも応答ボディの生成を継続します。このバッファリングされたデータはサーバーメモリを占有し、各停止したストリームは接続が終了するまでリソースを消費します。攻撃者は多くのストリームを開き、大きなリソースを要求し、かなりのメモリ蓄積を引き起こす可能性があります。これにより、システムの不安定化、クラッシュ、またはサービス提供の低下につながる可能性があります。ベンダーは、この脆弱性に対処するためのアップデートをリリースしており、リソース制限の実装と接続終了はリスクを軽減するのに役立ちます。