過剰サイズのリクエストコンポーネントの処理 - AWS WAF、AWS Firewall Manager、および AWS Shield Advanced

過剰サイズのリクエストコンポーネントの処理

AWS WAF は、本文、ヘッダー、または cookie リクエストコンポーネントの非常に大きなコンテンツの検査をサポートしていません。基盤となるホストサービスには、検査用に AWS WAF に転送する数とサイズの制限があります。例えば、ホストサービスは 200 を超えるヘッダーを AWS WAF に送信しません。したがって、205 ヘッダーを持つウェブリクエストの場合、AWS WAF では最後の 5 つのヘッダーを検査できません。AWS WAF でウェブリクエストが保護されたリソースに進むことが許可されると、ウェブリクエスト全体が送信されます。これには、AWS WAF で検査できた、数とサイズの制限外にあるコンテンツも含まれます。

制限は次のとおりです。

  • Body および JSON Body – リクエストの本文の最初の 8 KB (8,192 バイト) を検査できます。

  • Headers – 検査できるのは、最大で、リクエストヘッダーの最初の 8 KB (8,192 バイト) かつ、最初の 200 ヘッダーです。コンテンツは、最初の制限に達するまで、AWS WAF での検査に使用できます。

  • Cookies – 検査できるのは、最大で、リクエスト cookie の最初の 8 KB (8,192 バイト) かつ、最初の 200 cookie です。コンテンツは、最初の制限に達するまで、AWS WAF での検査に使用できます。

これらのコンポーネントについては、ルールステートメントを定義するときに、オーバーサイズ処理の手順を指定します。オーバーサイズ処理では、ルールで検査するリクエストコンポーネントが制限を超えているときにウェブリクエストを処理する方法を AWS WAF に指示します。

オーバーサイズ処理のオプションは次のとおりです。

  • Continue – ルールの検査基準に従って、リクエストコンポーネントを通常どおり検査します。AWS WAF では、サイズ制限内にあるリクエストコンポーネントのコンテンツが検査されます。

  • Match – ウェブリクエストをルールステートメントと一致するものとして扱います。AWS WAF では、ルールの検査基準に対してリクエストを評価せずに、ルールアクションをリクエストに適用します。

  • No match – ウェブリクエストを、ルールの検査基準に対して評価せずに、ルールステートメントと一致しないものとして処理します。AWS WAF では、一致しないルールの場合と同様に、ウェブ ACL 内の残りのルールを使用して、ウェブリクエストの検査を続行します。

AWS WAF コンソールで、これらの処理オプションのいずれかを選択する必要があります。コンソールの外では、デフォルトは Continue です。

Block に設定されたアクションを含むルールで Match オプションを使用する場合、ルールはコンポーネントタイプが大きすぎるリクエストをブロックします。その他の設定では、リクエストの最終的な処置は、ウェブ ACL 内の他のルールの設定や、ウェブ ACL のデフォルトアクション設定など、さまざまな要因に応じて異なります。

サイズと数の制限は、使用するすべてのルールに適用されます。これには、マネージドルールグループ内および別のアカウントと共有しているルールグループ内にある、使用しているが管理されていないルールが含まれます。これらのケースでオーバーサイズのコンポーネントを管理する方法については、「リクエストボディ、ヘッダー、cookie の検査」を参照してください。