アプリケーション層で悪意のある HTTP フラッド攻撃をブロックするため、Web Application Firewall (WAF) で HTTP フラッド攻撃対策テンプレートを設定します。日常的な防御または緊急対応のために組み込みの保護モードを使用し、サービス継続性を確保します。
基本概念
HTTP フラッド攻撃対策:コア Web 保護内のモジュールです。この機能を有効にするには、保護テンプレートを作成します。複数の保護テンプレートを作成できます。
保護テンプレート:保護ルールとその適用範囲を定義します。テンプレートは Template Information、ルールの設定、および 有効対象 で構成されます。
Template Information:テンプレートの種類を定義します。テンプレート作成後は、種類を変更できません。WAF では、次の 2 種類のテンプレートがサポートされています。
テンプレートの種類
説明
適用範囲
デフォルト保護テンプレート
WAF プロフェッショナル版、WAF Enterprise Edition、および WAF Ultimate Edition のサブスクリプション向けに、初期デフォルト保護テンプレートが提供されています。
作成時に、カスタム保護テンプレートに関連付けられていない保護対象およびオブジェクトグループに自動的に適用されます。新しく追加されたオブジェクトも自動的に保護されます。
特定のオブジェクトを手動で除外するには、そのステータスを「未適用」に設定します。
HTTP フラッド攻撃対策モジュールに対して、デフォルト保護テンプレートは 1 つしか作成できません。
保護対象がカスタムテンプレートから削除されると、自動的にデフォルトテンプレートに戻されます。
グローバルに適用が必要な一般的な保護ルールを展開します。
カスタム保護テンプレート
テンプレートを適用する保護対象またはオブジェクトグループを手動で指定する必要があります。
カスタムテンプレートに保護対象を追加すると、そのオブジェクトは自動的にデフォルトテンプレートから削除されます。
特定のサービス向けに詳細な保護ルールを展開します。
ルールの設定:攻撃シグネチャデータベースに基づく組み込み検出ルールを使用します。防御モード と応答用の Action を選択します。カスタムルールの記述は不要です。
有効対象:保護ルールを適用する保護対象またはオブジェクトグループを指定します。保護対象またはオブジェクトグループは、1 つの保護テンプレートにのみ関連付けることができます。
保護対象:ドメイン名またはクラウドサービスインスタンスを WAF に追加すると、システムが自動的に保護対象を作成します。
オブジェクトグループ:複数の保護対象をオブジェクトグループに追加して、集中管理を行います。
操作手順
前提条件:開始前に、Web サービスを WAF に追加して保護対象を作成していることを確認してください。Web サービスをまだ追加していない場合は、「サービスの追加」をご参照ください。
初期設定:以下の手順では、新しい HTTP フラッド攻撃対策テンプレートを作成する方法を説明します。これは、テンプレートが存在しない場合や、異なるオブジェクトに対して個別の構成が必要な場合に役立ちます。WAF プロフェッショナル版、WAF Enterprise Edition、および WAF Ultimate Edition のサブスクリプション では、日常的な保護ニーズを満たすデフォルト保護テンプレートが提供されています。デフォルト保護が効果的でない場合は、「誤検知および偽陰性の対処」をご参照ください。
WAF コンソールへの移動:
Web Application Firewall 3.0 コンソール にログインします。上部ナビゲーションバーで、ご利用の WAF インスタンスのリソースグループとリージョン(中国本土 または 中国本土以外)を選択します。次に、左側のナビゲーションウィンドウで を選択し、HTTP Flood Protection セクションで テンプレートを作成 をクリックします。
設定する Template Information:
テンプレート名:テンプレートの内容を示す名前を入力します。
デフォルトテンプレート:システムでは、WAF プロフェッショナル版、WAF Enterprise Edition、および WAF Ultimate Edition のサブスクリプション向けに初期デフォルト保護テンプレートが提供されています。HTTP フラッド攻撃対策モジュールに対して、デフォルト保護テンプレートは 1 つしか作成できません。初期デフォルトテンプレートが存在する場合、このパラメーターを はい に設定することはできません。
はい:有効対象 を指定する必要はありません。テンプレート作成時に、カスタム保護テンプレートに関連付けられていない保護対象およびオブジェクトグループに自動的に適用されます。新しく追加されたオブジェクトも自動的に保護されます。特定のオブジェクトを手動で除外するには、そのステータスを「未適用」に設定します。
いいえ:有効対象 またはテンプレートを適用するオブジェクトグループを手動で指定します。
ルールの設定:
防御モード:通常モード または 厳格モード を選択します。各モードには複数の組み込み保護ルールが含まれています。
通常モード:明らかな攻撃シグネチャを持つリクエストのみをブロックし、偽陽性率が低くなっています。日常的な運用や安定したトラフィックのシナリオに適しています。
厳格モード:高強度の検出アルゴリズムを使用して HTTP フラッド攻撃をブロックしますが、偽陽性率が高くなります。標準モードが効果的でなく、応答遅延や CPU またはメモリ使用量の増加など、サービス低下が観測される場合にのみ、このモードを有効にしてください。
説明厳格モード は、HTML5 ページを含む Web ページ専用です。API やネイティブアプリには使用しないでください。大量の誤検知が発生する可能性があります。API やネイティブアプリのシナリオでは、カスタムルール 保護テンプレートを使用してください。
Action:保護ルールに一致するリクエストに対して実行するアクションを指定します。
JS チャレンジ:クライアントに JavaScript 検証コマンドを送信します。このアクションは、一般的な保護シナリオに適しています。
モニター:リクエストをブロックせずにイベントをログに記録します。このアクションは、ポリシー検証、サービス テスト、または試験運用に適しています。
選択 有効対象:
このテンプレートの保護対象およびオブジェクトグループを選択します。テンプレートの保護対象は、ステップ 2 の構成によって異なります。
システム作成のデフォルト保護テンプレートを使用する場合、または新しいテンプレートをデフォルトとして設定する場合:保護対象を選択する必要はありません。テンプレートは、カスタムテンプレートに関連付けられていないすべての保護対象およびオブジェクトグループ(新しく追加されたものを含む)に自動的に適用されます。特定のオブジェクトを手動で除外するには、そのステータスを「未適用」に設定します。
テンプレートをデフォルトとして設定しない場合:テンプレートを適用する保護対象およびオブジェクトグループを手動で選択します。
説明テンプレート作成中または作成後に、保護対象またはオブジェクトグループの適用ステータスを調整できます。
誤検知および偽陰性の対処
保護テンプレートが HTTP フラッド攻撃をブロックできなかったり、正当なトラフィックを誤ってブロックしたりする場合は、以下の手順で原因を診断し、問題を解決してください。
通常モード で攻撃がブロックされない
WAF が攻撃リクエストをブロックできない場合は、以下の一般的な原因と推奨される解決策を確認してください。
リクエストが WAF で処理されていない
原因:WAF で設定された SSL 証明書またはリスナーポートが、オリジンサーバーの構成と一致していません。
原因:CNAME レコードモードで、DNS レコードが正しく変更されておらず、トラフィックが WAF に誘導されていません。
原因:CNAME レコードモードで、攻撃者がオリジンサーバーの IP アドレスに直接アクセスすることで、WAF をバイパスしています。
推奨事項:オリジンサーバーのセキュリティグループを設定し、WAF のバックトゥオリジン CIDR ブロックからのトラフィックのみを許可してください。
原因:クラウドサービスを追加する際、WAF 保護用に追加されたインスタンスが、実際にドメイン名が解決するものと異なっています。
推奨事項:正しいクラウドサービスインスタンスが WAF に追加されていることを確認してください。
リクエストは WAF で処理されているが、ルールに一致していない
通常モード の HTTP フラッド攻撃対策テンプレートが引き続き効果的でない場合は、以下の対応を実施してください。
厳格モード を有効化:このモードは、HTTP フラッド攻撃からの緊急サービス回復に適しており、Web および HTML5 サービスにのみ適用されます。大量の誤検知を回避するため、クラスタリング分析に基づいて正当なユーザーをホワイトリストに追加してください。
カスタムルール モジュールの使用:WAF では、クライアント IP アドレス、URI、User-Agent、リージョンなどのフィールドに基づいて保護ポリシーを作成し、特定の攻撃シグネチャに対して正確に防御できます。ただし、これにはアクセスログを分析して攻撃パターンを特定する必要があります。
Anti-DDoS Proxy の使用:大規模な HTTP フラッド攻撃により、ピークトラフィックが Anti-DDoS Basic のブラックホールしきい値を超える可能性があります。この場合、WAF トラフィックはブラックホールされ、アクセス不能になります。このようなケースでは、Anti-DDoS Proxy を使用してください。詳細については、「HTTP フラッド攻撃対策の設定」をご参照ください。
厳格モード で通常のサービスが誤ってブロックされる
厳格モード の HTTP フラッド攻撃対策テンプレートにより大量の誤検知が発生する場合は、以下の対策を講じてください。
正当なトラフィックをホワイトリストに登録:クラスタリングの特徴量に基づいて、正当なユーザーをホワイトリストに追加します。
通常モード に切り替え、カスタムルール 保護モジュールを使用:WAF では、クライアント IP、アクセス URI、User-Agent、リージョンなどのフィールドに基づいて保護ポリシーを設定し、特定の攻撃パターンに対して正確に防御できます。ただし、これらのパターンを特定するために、まずアクセスログを分析する必要があります。
Anti-DDoS Pro の使用:高頻度の HTTP フラッド攻撃により、ピークトラフィックが Anti-DDoS Origin のブラックホールしきい値を超える可能性があります。このしきい値を超えると、WAF へのトラフィックはブラックホールされ、サービスがアクセス不能になります。このようなケースでは、保護のために Anti-DDoS Pro を使用してください。詳細については、「HTTP フラッド攻撃対策の設定」をご参照ください。
日常的なメンテナンス
新しい HTTP フラッド攻撃対策テンプレートは、デフォルトで有効になっています。保護テンプレート一覧で、以下の操作を実行できます。
保護テンプレートの表示:保護テンプレート名の左側にある
アイコンをクリックして、テンプレートに含まれるルールを表示します。保護テンプレートの有効化または無効化:ステータス を使用して、テンプレートを有効化または無効化します。
保護テンプレートの編集:保護テンプレートの 操作 列で 編集 をクリックして、Template Information、ルールの設定、および 有効対象 などの設定を変更します。
保護テンプレートの削除:テンプレートが不要になった場合は、テンプレートの 操作 列で 削除 をクリックします。表示されるダイアログボックスで、削除 をクリックして操作を完了します。
重要保護対象のカスタム保護テンプレートを削除すると、その保護対象は自動的にデフォルト保護テンプレートに追加されます。
デフォルト保護テンプレートに保護対象が含まれている状態で削除すると、それらの保護対象は HTTP フラッド攻撃対策ルールによる保護を受けなくなります。