このトピックでは、Web Application Firewall (WAF) の保護構成の用語、プロセス、保護モジュール、および例について説明します。
保護構成プロセス
WAF に Web サービスを追加した後、以下の手順を実行して Web サービスの 保護ルール を構成できます。保護構成プロセスは、WAF に Web サービスを追加するために使用するメソッドによって異なります。
手順 | クラウドネイティブモード | CNAME レコードモード |
1. 保護対象オブジェクト を追加します。 | クラウドネイティブモードで WAF に追加されたクラウドサービスインスタンスは、WAF の保護対象オブジェクトとして自動的に追加されます。特別な構成要件がない場合は、この手順を実行する必要はありません。 同じクラウドサービスインスタンスを指す異なるドメイン名に異なる保護ルールを構成する場合は、WAF でドメイン名を保護対象オブジェクトとして手動で追加する必要があります。詳細については、「保護対象オブジェクトと保護対象オブジェクトグループを構成する」をご参照ください。 | この手順を実行する必要はありません。 CNAME レコードモードで WAF に追加されたドメイン名は、WAF の保護対象オブジェクトとして自動的に追加されます。 |
2. (オプション) 保護対象オブジェクトを 保護対象オブジェクトグループ に追加します。 | 複数の保護対象オブジェクトに同じ保護ルールを構成する場合は、保護対象オブジェクトを保護対象オブジェクトグループに追加してから、保護対象オブジェクトグループの保護ルールを構成できます。保護対象オブジェクトグループに構成された保護ルールは、グループ内のすべての保護対象オブジェクトに有効です。 保護対象オブジェクトグループを使用するには、保護対象オブジェクトグループを作成し、保護対象オブジェクトをグループに追加する必要があります。詳細については、「保護対象オブジェクトグループを作成する」をご参照ください。 | |
3. 保護テンプレートを定義します。 | 保護モジュール を有効にするには、保護モジュールの保護テンプレートを作成する必要があります。その後、保護テンプレートを特定の保護対象オブジェクトまたは保護対象オブジェクトグループに適用できます。 [コア保護ルール] モジュールと [ホワイトリスト] モジュールには、初期デフォルトの保護テンプレートがあります。これらのモジュールの手動で保護テンプレートを作成する必要はありません。他の保護モジュールを有効にする場合は、手動で保護テンプレートを作成する必要があります。詳細については、「保護モジュールの概要」をご参照ください。 また、複数の保護テンプレートを定義して、異なる保護対象オブジェクトに異なる保護ルールを適用することもできます。詳細については、「例: 保護モジュールに複数の保護テンプレートを構成する」をご参照ください。 | |
4. 保護ルールとルールが適用されるオブジェクトを管理します。 | さまざまな保護モジュールの保護テンプレート内の保護ルールを管理できます。たとえば、保護ルールを有効または無効にしたり、保護ルールを作成したりできます。その後、既存の保護対象オブジェクトまたはグループをルールが適用されるオブジェクトとして選択できます。保護テンプレート内の保護ルールの変更は、保護テンプレートが適用されているすべての保護対象オブジェクトに有効です。 保護ルールで実行できる操作は、保護モジュールによって異なります。詳細については、「保護モジュールの概要」をご参照ください。 | |
保護モジュールの概要
次の表は、WAF でサポートされている保護モジュールと各保護モジュールのデフォルト構成について説明しています。
保護モジュール | 説明 | 初期デフォルト保護 | 構成の推奨事項 |
組み込みの 保護ルールセット に基づいて、一般的な Web アプリケーション攻撃を防ぎます。一般的な Web アプリケーション攻撃には、SQL インジェクション、クロスサイトスクリプティング (XSS)、コード実行、Webshell アップロード、コマンドインジェクションなどがあります。 | デフォルトで有効になっており、ブロックモードを使用する初期デフォルト保護テンプレート (WAF のコア保護ルールセットを含む) があります。 重要 デフォルトでは、コア保護ルールモジュールは、WAF に新しく追加されたすべての保護対象オブジェクトに対して有効になっています。モジュールは攻撃リクエストを自動的にブロックします。 | デフォルト構成を保持することをお勧めします。 サービスが一定期間 WAF によって保護された後、コア保護ルールセットが通常の要求をブロックすることがわかった場合は、[ホワイトリスト] ルールを構成して、誤検知の原因となるコア保護ルールをバイパスできます。詳細については、「ホワイトリストモジュールの保護ルールを構成して特定の要求を許可する」をご参照ください。 | |
説明 ルールグループ機能はスペックアップされ、エンジン構成機能に反復されています。詳細については、「[お知らせ]」をご参照ください。 | デフォルトのルールグループとカスタムルールグループをサポートしています。ビジネス要件に基づいてルールグループをコア保護ルールテンプレートに関連付けて、さまざまな一般的な Web アプリケーション攻撃から Web サイトを保護できます。 | 初期デフォルトのルールグループがあります。 | カスタムルールグループを有効にするには、ルールグループテンプレートを作成し、関連ルールを構成する必要があります。 |
指定された特性を持つリクエストが、すべてまたは指定された保護モジュールのチェックをバイパスすることを許可します。ビジネス要件に基づいてリクエストの特性を設定できます。 | 初期デフォルト保護テンプレート(ルールが定義されていない)があります。保護テンプレートはデフォルトで有効になっています。 | 特定の特性を持つビジネス リクエストを許可する場合、デフォルト保護テンプレートでホワイトリスト ルールを作成できます。 | |
組み込みの一般的な HTTP フラッド攻撃保護アルゴリズムに基づいて、高頻度の HTTP フラッド攻撃を軽減します。カスタムルールモジュールでレート制限を設定して、HTTP フラッド攻撃保護ルールをカスタマイズすることもできます。 | 初期デフォルト保護テンプレートがあります。保護テンプレートはデフォルトで有効になっています。 説明 Pro、Enterprise、または Ultimate エディションを実行しているサブスクリプション WAF インスタンスのみが、デフォルトで有効になっている初期デフォルト保護テンプレートを備えています。 | カスタムルールを有効にするには、保護テンプレートを作成し、関連ルールを設定する必要があります。 | |
スキャン保護モジュールは、スキャナーの挙動と特性を識別し、攻撃者やスキャナーによる Web サイトの大規模スキャンを阻止します。これにより、Web サービスへの侵入のリスクを軽減し、無効なスキャントラフィックをブロックできます。 | 初期デフォルト保護テンプレートがあります。保護テンプレートはデフォルトで有効になっています。 説明 Pro、Enterprise、または Ultimate エディションを実行しているサブスクリプション WAF インスタンスのみ、デフォルトで有効になっている初期デフォルト保護テンプレートがあります。 | カスタムルールを有効にするには、保護テンプレートを作成し、関連ルールを設定する必要があります。 | |
IP ブラックリストモジュールは、指定された IPv4 アドレス、IPv6 アドレス、または CIDR ブロックからのリクエストをブロックします。ビジネス要件に基づいて IP アドレスまたは CIDR ブロックを指定できます。 | 初期デフォルトの保護テンプレートは提供されていません。この保護モジュールはデフォルトで無効になっています。 | この保護モジュールを有効にするには、保護テンプレートを作成し、関連ルールを設定する必要があります。 | |
カスタムルールモジュールを使用すると、カスタムルールを設定し、カスタムルールに一致条件を追加できます。カスタムルールを作成すると、Web Application Firewall (WAF) は、カスタムルールに一致するリクエストに対して特定の操作を実行します。操作は、ブロック、監視、または JavaScript 検証です。一致条件は、WAF で検出するリクエストの特性を指定します。 カスタムルールを設定する際に、レート制限を有効にすることができます。レート制限が有効になると、統計オブジェクト(IP アドレスやセッションなど)のリクエストレートがしきい値を超えた場合、統計オブジェクトがブラックリストに追加されます。統計オブジェクトがブラックリストに追加されると、WAF は、指定された期間、統計オブジェクトからのリクエストに対して指定された操作を実行します。 | |||
クライアント リクエストが WAF によってブロックされたときに WAF がクライアントに返すブロック ページを構成できます。ブロック ページの状態コード、応答ヘッダー、および応答本文を指定できます。 | |||
数回のクリックで特定のリージョンからのクライアント IP アドレスをブロックします。 | |||
この機能を使用すると、指定された Web ページをロックしてコンテンツの改ざんを防ぐことができます。ロックされた Web ページがリクエストを受信すると、事前に構成されたキャッシュページが返されます。 | |||
異常な返却コンテンツをフィルタリングし、ID カード番号、電話番号、銀行カード番号、禁止用語などの機密情報をマスキングします。 | |||
フィンガープリント技術を使用して、レイヤー 4 とレイヤー 7 のボットトラフィックを検出します。 | |||
クライアント、トラフィック、動作、およびインテリジェンスの特性に基づいてボットトラフィックを識別し、悪意のあるトラフィックをブロックして、不要な帯域幅消費、データクローリング、スパムユーザー登録、悪意のある注文、悪意のある投票、および API の悪用を防止します。 | |||
特定の時間範囲内における主要イベントのセキュリティを確保し、サービスに対して精密保護を提供します。 | 初期デフォルトの保護テンプレートは提供されていません。この保護モジュールはデフォルトで無効になっています。 | この保護モジュールを有効にするには、保護テンプレートを作成し、関連ルールを構成する必要があります。 | |
WAF によって保護されているサービスの API を自動的にソートし、API への不正アクセス、機密データの漏洩、内部 API の漏洩などの API の脆弱性を検出します。 このモジュールでは、レポートを使用して API 例外イベントを追跡し、検出された脆弱性の修正方法に関する提案を提供し、API ライフサイクル管理のデータを提供します。 これにより、包括的な API セキュリティ保護を構成できます。 | 該当なし。 | ||
QPS 制限またはパーセンテージ制限を使用してサーバーへのリクエスト数を厳密に制御し、特定のソースリージョンからのトラフィックをフィルタリングできます。 | 初期デフォルト保護テンプレートは提供されていません。この保護モジュールはデフォルトで無効になっています。 | この保護モジュールを有効にするには、保護テンプレートを作成し、関連ルールを設定する必要があります。 | |
WAF の保護機能はエディションによって異なります。たとえば、ピークトラフィック 速度制限 モジュールは、Pro エディション以上を実行している サブスクリプション WAF インスタンス でのみサポートされています。機能の違いの詳細については、「エディション」をご参照ください。
WAF 保護を無効にする
WAF 保護を一時的に無効にする場合は、WAF 3.0 コンソールの [保護対象] ページに移動し、[WAF 保護ステータス] をオフにします。次の図は、トグルを示しています。

WAF 保護を無効にすると、元々 WAF によって保護されている Web サイト宛てのトラフィックは WAF の保護エンジンをバイパスし、WAF は監視対象およびブロック対象のリクエストのログ記録を停止します。緊急テストなど、WAF 保護を一時的に無効にする必要がある操作を実行した後は、できるだけ早く WAF 3.0 コンソールの [保護対象] ページに移動し、WAF 保護を有効にしてログ記録を再開することをお勧めします。これは、資産の潜在的な露出を減らすのに役立ちます。 WAF 保護または特定の機能を無効にしても、API セキュリティポリシーを設定している場合、関連する検出プロセスは引き続き実行されます。
従量課金 WAF インスタンスを使用していて、短期間 WAF 保護を無効にした場合でも、その期間中は機能料金と基本トラフィック料金が課金されます。 API セキュリティモジュールを有効にしている場合は、API セキュリティモジュールのトラフィック料金も課金されます。 ボット管理、リスク識別、およびカスタムルールの課金は一時停止されます。
クラウド ネイティブモードで WAF に追加された Microservices Engine (MSE) または Function Compute (FC) 資産の WAF 保護を無効にするために、[WAF 保護ステータス] をオフにすることはできません。資産がハイブリッドクラウド モードで WAF に追加されている場合、WAF インスタンスが必要なエディションを実行している場合にのみ、[WAF 保護ステータス] をオフにして、資産の WAF 保護を無効にすることができます。必要なエディションの詳細については、ビジネス マネージャーに連絡するか、チケット を送信してご相談ください。サポート チームからバージョン要件に関する正確な情報が提供されます。
例: 保護モジュールに複数の保護テンプレートを設定する
保護モジュールに複数の保護テンプレートを設定できます。保護テンプレートを使用すると、さまざまな保護対象オブジェクトに対して異なる保護ルールを設定し、多様な保護要件に対応できます。
ほとんどの保護モジュールは、デフォルトの保護テンプレートをサポートしています。保護モジュールは、デフォルトの保護テンプレートを 1 つだけ持つことができます。デフォルトの保護テンプレートは、新しく追加されたすべての保護対象オブジェクトまたはグループに自動的に適用されます。デフォルトの保護テンプレートは、Default とマークされています。保護モジュールでは、このマークのないテンプレートはカスタム保護テンプレートです。保護対象オブジェクトは、デフォルトの保護テンプレートから手動で削除することもできます。保護対象オブジェクトがどのテンプレートにも含まれていない場合、WAF では保護されません。

一部の保護モジュールでは、単一の保護対象オブジェクトまたはオブジェクトグループに対して複数の保護テンプレートを設定することもできます。これらのカスタム保護テンプレートで保護対象オブジェクトを追加または削除しても、保護対象オブジェクトはデフォルトの保護テンプレートに自動的に追加または削除されません。
例 1: コア保護ルールで新しい保護対象オブジェクトを監視する
この例では、[コア保護ルール] モジュールを使用します。このモジュールには、初期デフォルトの保護テンプレート([アクション] が [ブロック] に設定されている)があり、WAF の新しく追加されたすべての保護対象オブジェクトに直接適用されます。WAF が保護対象オブジェクトに送信された攻撃リクエストを検出した場合、WAF は攻撃リクエストをブロックします。
WAF が新しく追加された保護対象オブジェクトに送信された攻撃リクエストを監視し、既存の保護対象オブジェクトに送信された攻撃リクエストをブロックするようにするには、次の構成を使用できます。WAF が攻撃リクエストを監視する場合、WAF は攻撃リクエストをブロックしませんが、攻撃リクエストと一致する保護ルールの記録を保持します。
デフォルトの保護テンプレートで、[アクション] パラメーターの値を [監視] に変更します。
コア保護ルールテンプレート(カスタム保護テンプレート)を作成します。[アクション] パラメーターを [ブロック] に設定し、[適用対象] パラメーターを WAF の既存のすべての保護対象オブジェクトに設定します。
上記の操作を実行した後、WAF は新しい保護対象オブジェクトに送信されたリクエストを監視します。WAF が不要なリクエストのみをブロックすることを確認した後、ブロックモードを使用する保護テンプレートを新しい保護対象オブジェクトに適用できます。
例 2: 特定の保護対象オブジェクトのカスタムホワイトリストを設定する
この例では、[ホワイトリスト] モジュールを使用します。このモジュールには、初期デフォルトの保護テンプレート(ルールが定義されていない)があります。保護テンプレートはデフォルトで有効になっています。
IP1 からのリクエストを許可するために WAF のすべての保護対象オブジェクトのホワイトリstruルを設定する場合、特定の保護対象オブジェクトに対して IP1 と IP2 の両方からのリクエストを許可する場合は、次の構成を使用できます。
IP1からの要求を許可する保護ルールをデフォルトの保護テンプレートで構成します。デフォルトでは、すべての保護対象オブジェクトまたはグループが、ルールが適用されるオブジェクトとして選択されます。IP2からの要求を許可するホワイトリストテンプレート(カスタム保護テンプレート)を作成し、[適用対象] パラメーターを特定の保護対象オブジェクトに設定します。