リクエストルールを設定する

リクエストルールを設定すると、WAF がアクションを実行するためにリクエストが満たす必要がある任意の条件を定義し、条件が満たされた場合に WAF が実行すべきアクションを定義できます。たとえば、特定のヘッダーを持つすべてのリクエスト、特定のパスへのリクエスト、または特定の IP アドレスからのリクエストをブロックするルールを作成できます。

ヒント : ルールロジックが機能するかどうか不安な場合は、シミュレーターを使用してテストしてください。

制約と考慮事項

リクエストルールを扱う際には、以下の点に留意してください。

  • リクエストルールは、Security Starter、Security Advantage、または Security Ultimate パッケージセキュリティ製品/サービスの場合、企業 (アカウントとも呼ばれる) ごとに1000件、サイト (ワークスペースとも呼ばれる) ごとに1000件に制限されます。他のパッケージには異なる制限がある場合があります。

  • リクエストルールは、パッケージ内容の制限の目的においては、カスタムルールとみなされます。

リクエストルールの作成

複数のサイト (ワークスペース) に適用されるリクエストルール、または単一のサイト (ワークスペース) にのみ適用されるリクエストルールを作成できます。

複数のサイト (ワークスペース) に適用されるルールを作成する

複数のサイト (ワークスペース) に適用されるリクエストルールを作成するには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Corp Rules メニューから、Corp Rules を選択します。

  3. Add corp rule をクリックします。

    上述のように、IP アドレス「198.51.100.0/24」からの「/login」ページへのリクエストをブロックするように設計されたリクエストルール。.

  4. Type セクションで、Request を選択します。

  5. Conditions セクションの各フィールドを以下のように設定します。

    • Field メニューから、条件の基準となるリクエストフィールドを選択します。

    • Value フィールドに、指定したフィールドの値を入力します。

    • Operator メニューから演算子を選択し、選択したフィールドと値を比較する方法を指定します。

    • (オプション) 別の条件を追加するには、Add condition をクリックします。条件のグループを作成するには、Add group をクリックします。

    • リクエストがすべての条件を満たす必要があることを指定するには All を選択します。リクエストが1つの条件のみを満たす必要があることを指定するには Any を選択します。

  6. Actions セクションの各フィールドを以下のように設定します。

    • Action type メニューから、リクエストがルールの条件を満たしている場合に実行するアクションを選択します。

    • (オプション) 別のアクションを追加するには、Add action をクリックします。

  7. Details セクションの各フィールドを以下のように設定します。

    • ルールの基準に一致するリクエストのログを保存するには、Request logging メニューから Sampled を選択します。保存しない場合は None を選択します。None を選択した場合でも、時系列グラフにはルールの基準に一致するリクエストのデータが引き続き含まれます。詳細については、リクエストデータの保存に関するガイドをご覧ください。

    • Status スイッチは有効のままにしておきます。

    • Change expiration をクリックし、ルールを無効にするタイミングをメニューから選択します。

    • Description フィールドに、ルールの説明を入力します。

    • Scope メニューで、Global を選択したままにすると、ルールがすべてのサイトに適用されます。特定のサイトにルールを適用する場合は、Specific sites を選択し、ルールを適用するサイトを選択します。

  8. Create corp rule をクリックします。リクエストルールが作成され、Site Rules ページが表示されます。

1つのサイト (ワークスペース) に適用されるルールを作成する

1つのサイト (ワークスペース) にのみ適用されるリクエストルールを作成するには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Sites メニューから、複数のサイトがある場合はサイトを選択します。
  3. Rules メニューから、Site Rules を選択します。

  4. Add site rule をクリックします。

    上述のように、IP アドレス「198.51.100.50」からの「/login」ページへのリクエストをブロックするように設計されたリクエストルール。.

  5. Type セクションで、Request を選択します。

  6. Conditions セクションの各フィールドを以下のように設定します。

    • Field メニューから、条件の基準となるリクエストフィールドを選択します。

    • Value フィールドに、指定したフィールドの値を入力します。

    • Operator メニューから演算子を選択し、選択したフィールドと値を比較する方法を指定します。

    • (オプション) 別の条件を追加するには、Add condition をクリックします。条件のグループを作成するには、Add group をクリックします。

    • リクエストがすべての条件を満たす必要があることを指定するには All を選択します。リクエストが1つの条件のみを満たす必要があることを指定するには Any を選択します。

  7. Actions セクションの各フィールドを以下のように設定します。

    • Action type メニューから、リクエストがルールの条件を満たしている場合に実行するアクションを選択します。

    • (オプション) Action type メニューで Browser challenge を選択した場合、チャレンジを非インタラクティブのまま保つには Allow Interactive スイッチを無効のままにします。インタラクティブ (CAPTCHA) チャレンジを要求するにはスイッチをクリックします。

    • (オプション) Action type メニューで Block を選択した場合は、Change response をクリックして、ルールがリクエストをブロックしたときに返すカスタムレスポンスコードを指定します。サポートされているカスタムレスポンスコードは 301302、および 400-599 です。

    • (オプション) Response code (オプション) フィールドに 301 または 302 を入力した場合は、Redirect URL (オプション) フィールドにリダイレクト先の絶対 URL または相対 URL を入力します。詳細については、リダイレクト・カスタム・レスポンス・コードの使用に関するガイドをご覧ください。

    • (オプション) 別のアクションを追加するには、Add action をクリックします。

  8. Details セクションの各フィールドを以下のように設定します。

    • ルールの基準に一致するリクエストのログを保存するには、Request logging メニューから Sampled を選択します。保存しない場合は None を選択します。None を選択した場合でも、時系列グラフにはルールの基準に一致するリクエストのデータが引き続き含まれます。詳細については、リクエストデータの保存に関するガイドをご覧ください。

    • Status スイッチは有効のままにしておきます。

    • Change expiration をクリックし、ルールを無効にするタイミングをメニューから選択します。

    • Description フィールドに、ルールの説明を入力します。

  9. Create site rule をクリックします。リクエストルールが作成され、Site Rules ページが表示されます。

リクエストルールの編集

既存のルールを編集する手順は、ルールが複数のサイト (ワークスペース) に適用されるか、単一のサイト (ワークスペース) に適用されるかによって異なります。

複数のサイト (ワークスペース) に適用されるルールを編集する

複数のサイト (ワークスペース) に適用されるリクエストルールを調整するには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Corp Rules メニューから、Corp Rules を選択します。

  3. 編集したいルールの横にある Edit をクリックします。

    上述のように、IP アドレス「198.51.100.0/24」からの「/login」ページへのリクエストをブロックするように設計されたリクエストルール。.

  4. Conditions セクションの各フィールドを以下のように設定します。

    • Field メニューから、条件の基準となるリクエストフィールドを選択します。

    • Value フィールドに、指定したフィールドの値を入力します。

    • Operator メニューから演算子を選択し、選択したフィールドと値を比較する方法を指定します。

    • (オプション) 別の条件を追加するには、Add condition をクリックします。条件のグループを作成するには、Add group をクリックします。

    • リクエストがすべての条件を満たす必要があることを指定するには All を選択します。リクエストが1つの条件のみを満たす必要があることを指定するには Any を選択します。

  5. Actions セクションの各フィールドを以下のように設定します。

    • Action type メニューから、リクエストがルールの条件を満たしている場合に実行するアクションを選択します。

    • (オプション) 別のアクションを追加するには、Add action をクリックします。

  6. Details セクションの各フィールドを以下のように設定します。

    • ルールの基準に一致するリクエストのログを保存するには、Request logging メニューから Sampled を選択します。保存しない場合は None を選択します。None を選択した場合でも、時系列グラフにはルールの基準に一致するリクエストのデータが引き続き含まれます。詳細については、リクエストデータの保存に関するガイドをご覧ください。

    • Status スイッチは有効のままにしておきます。

    • Change expiration をクリックし、ルールを無効にするタイミングをメニューから選択します。

    • Description フィールドに、ルールの説明を入力します。

    • Scope メニューで、Global を選択したままにすると、ルールがすべてのサイトに適用されます。特定のサイトにルールを適用する場合は、Specific sites を選択し、ルールを適用するサイトを選択します。

  7. Update corp rule をクリックします。リクエストルールが作成され、Site Rules ページが表示されます。

単一のサイト (ワークスペース) に適用されるルールを編集する

1つのサイト (ワークスペース) にのみ適用されるリクエストルールを調整するには、次の手順を実行します。

  1. Next-Gen WAF control panel
  2. Fastly control panel
  1. Next-Gen WAF コンソールにログインします。
  2. Sites メニューから、複数のサイトがある場合はサイトを選択します。
  3. Rules メニューから、Site Rules を選択します。

  4. 更新したいルールの横にある Edit をクリックします。

    上述のように、IP アドレス「198.51.100.50」からの「/login」ページへのリクエストをブロックするように設計されたリクエストルール。

  5. Type セクションで、Request を選択します。

  6. Conditions セクションの各フィールドを以下のように設定します。

    • Field メニューから、条件の基準となるリクエストフィールドを選択します。

    • Value フィールドに、指定したフィールドの値を入力します。

    • Operator メニューから演算子を選択し、選択したフィールドと値を比較する方法を指定します。

    • (オプション) 別の条件を追加するには、Add condition をクリックします。条件のグループを作成するには、Add group をクリックします。

    • リクエストがすべての条件を満たす必要があることを指定するには All を選択します。リクエストが1つの条件のみを満たす必要があることを指定するには Any を選択します。

  7. Actions セクションの各フィールドを以下のように設定します。

    • Action type メニューから、リクエストがルールの条件を満たしている場合に実行するアクションを選択します。

    • (オプション) Action type メニューで Browser challenge を選択した場合、チャレンジを非インタラクティブのまま保つには Allow Interactive スイッチを無効のままにします。インタラクティブ (CAPTCHA) チャレンジを要求するにはスイッチをクリックします。

    • (オプション) Action type メニューで Block を選択した場合は、Change response をクリックして、ルールがリクエストをブロックしたときに返すカスタムレスポンスコードを指定します。サポートされているカスタムレスポンスコードは 301302、および 400-599 です。

    • (オプション) Response code (オプション) フィールドに 301 または 302 を入力した場合は、Redirect URL (オプション) フィールドにリダイレクト先の絶対 URL または相対 URL を入力します。詳細については、リダイレクト・カスタム・レスポンス・コードの使用に関するガイドをご覧ください。

    • (オプション) 別のアクションを追加するには、Add action をクリックします。

  8. Details セクションの各フィールドを以下のように設定します。

    • ルールの基準に一致するリクエストのログを保存するには、Request logging メニューから Sampled を選択します。保存しない場合は None を選択します。None を選択した場合でも、時系列グラフにはルールの基準に一致するリクエストのデータが引き続き含まれます。詳細については、リクエストデータの保存に関するガイドをご覧ください。

    • Status スイッチは有効のままにしておきます。

    • Change expiration をクリックし、ルールを無効にするタイミングをメニューから選択します。

    • Description フィールドに、ルールの説明を入力します。

  9. Update site rule をクリックします。リクエストルールが更新され、サイトルールページが表示されます。

リクエストルールの削除

ルールを削除するには、ルールの削除セクションに記載されている手順に従ってください。

リクエストルールの例

以下の例では、一般的なユースケースでリクエストルールを設定する方法を示しています。例で使用されている値 (パスやレスポンスコード) は、特定の Web アプリケーションで使用される値とは異なる場合があることにご注意ください。

悪意のある IP アドレスからの攻撃をブロックする

この例は、以下の条件を満たす IP アドレスからの攻撃を即座にブロックするリクエストルールを示しています。

  • SANS Internet Storm Center によって悪意のあるものとして報告された。

  • Fastly の Network Learning Exchange (NLX) によって攻撃者として特定された。

  • TOR 出口ノードとして機能する。

ルールは以下のようになります。

  • 攻撃シグナルでタグ付けされたリクエストを探す。攻撃シグナルのシステムリストには、すべての攻撃シグナルが含まれています。

  • 悪意のある IPSigSci IP、または Tor トラフィックシグナルでタグ付けされたリクエストを探す。

  • ルールに設定された条件を満たすリクエストをブロックする。

ヒント : リスト機能にアクセスできない場合は、個々の攻撃シグナルごとにリクエストルールを作成します。

  1. Next-Gen WAF control panel
  2. Fastly control panel

上記で説明したように、悪意のある IP アドレスからの攻撃をブロックするように設計されたリクエストルール。

悪質なボットをブロックする

この例は、以下に当てはまる疑わしい悪質なボットの IP アドレスからのリクエストを即座にブロックするリクエストルールを示しています。

  • SANS Internet Storm Center によって悪意のあるものとして報告された。

  • Fastly の Network Learning Exchange (NLX) によって攻撃者として特定された。

  • TOR 出口ノードとして機能する。

ルールは以下のようになります。

  1. Next-Gen WAF control panel
  2. Fastly control panel

上記で説明したように、悪意のある IP アドレスからの攻撃をブロックするように設計されたリクエストルール。