AWS WAF ルール - AWS WAF、AWS Firewall Manager、および AWS Shield Advanced

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS WAF ルール

すべてのルールグループおよびすべてのウェブ ACL で、ルールは、ウェブリクエストの検査方法と、ウェブリクエストが検査基準に一致した場合の処理を定義します。各ルールにはトップレベルのステートメントが 1 つ必要です。このステートメントには、ルールとステートメントのタイプに応じて、ネストされたステートメントを任意の深さに含めることができます。

検査の指示は、ルールステートメントとして、およびルールアクションに含まれるアクションとして、JSON 形式で含まれています。

ウェブ ACL のルールを使用して、次のような基準に基づいて HTTP (S) ウェブリクエストを検査し、処理する方法を定義します。

  • 悪意のある可能性が高いスクリプト。攻撃者は、ウェブアプリケーションの脆弱性を悪用できるスクリプトを埋め込みます。これはクロスサイトスクリプティング(XSS)と呼ばれます。

  • リクエストの発生元の IP アドレスまたはアドレス範囲。

  • リクエスト送信元の国または地理的場所。

  • クエリ文字列など、リクエストの指定した部分の長さ。

  • 悪意のある可能性が高い SQL コード。攻撃者は、ウェブリクエストに悪意のある SQL コードを埋め込むことで、データベースからデータを抽出しようとします。これは SQL インジェクション と呼ばれます。

  • リクエストに表示される文字列。たとえば、User-Agent ヘッダーに表示される値、またはクエリ文字列に表示されるテキスト文字列です。正規表現を使用してこれらの文字列を指定することもできます。

  • Web ACL の以前のルールが要求に追加したラベル。

一部のルールタイプは複数の値を取ります。たとえば、IP アドレスルールでは最大 10,000 個の IP アドレスまたは IP アドレス範囲を指定できます。

ウェブリクエスト検査基準を提供する上記リストのようなステートメントに加えて、AWS WAFの論理文をサポートするAND,OR, およびNOTルール内のステートメントを組み合わせるために使用します。

たとえば、攻撃者からの最近のリクエストに基づいて、論理的なANDステートメントを使用します。これは、次のネストされたステートメントを組み合わせたものです。

  • リクエストが 192.0.2.44 から発生した。

  • リクエストの User-Agent ヘッダーに BadBot 値が含まれる。

  • それらのクエリ文字列には、SQL のようなコードが含まれる。

この場合、すべてのステートメントはトップレベルのANDステートメントを一致させます。

ルールは、AWS WAF に単独で存在するわけではありません。彼らはそうではありませんAWSリソースに含まれており、Amazon リソースネーム (ARN) がありません。ルールが定義されているルールグループまたはウェブ ACL に含まれるルールにアクセスするには、名前を使用します。ルールを管理し、ルールを他のウェブ ACL にコピーするには、そのルールが含まれているルールグループまたはウェブ ACL の JSON 形式を使用します。または、それらをAWS WAFconsoleルールビルダーウェブ ACL とルールグループで使用できます。これは、ウェブ ACL とルールグループで使用できます。