Web Application Firewall (WAF) に Web サービスを追加した後、スキャン保護モジュールの保護ルールを設定して、スキャン動作とスキャナーの特性を識別し、攻撃者やスキャナーが Web サイトを大規模にスキャンするのを防ぐことができます。これにより、Web サービスへの侵入リスクを低減し、無効なスキャントラフィックをブロックできます。このトピックでは、スキャン保護テンプレートとルールの作成方法について説明します。
背景情報
スキャン保護モジュールは、次の種類のルールを提供します。
高頻度スキャンブロック: ソースが、現在の保護対象オブジェクトに設定されたコア保護ルールモジュールの保護ルールを短時間で複数回トリガーした場合、そのソースはブラックリストに追加されます。WAF は、特定の期間、そのソースからのリクエストをブロックまたはモニターします。
ディレクトラバーサルブロック: ソースが、保護対象オブジェクトの存在しない多数のディレクトリに短時間でアクセスした場合、そのソースはブラックリストに追加されます。WAF は、特定の期間、そのソースからのリクエストをブロックまたはモニターします。
スキャナーブロック: 一般的なスキャナーがブラックリストに追加されます。スキャナーには、sqlmap、AWVS、Nessus、Appscan、Webinspect、Netsparker、Nikto、RSAS が含まれます。WAF は、これらのスキャナーからのリクエストをブロックまたはモニターします。
テンプレートタイプ
スキャン保護モジュールは、次の 2 種類のテンプレートを提供します。
保護テンプレート | 説明 | 適用対象 |
デフォルト保護テンプレート | WAF によって提供される初期のデフォルト保護テンプレート。保護テンプレートはデフォルトで有効になっています。 説明 デフォルトで有効になっている初期デフォルト保護テンプレートは、Pro、Enterprise、または Ultimate エディションを実行するサブスクリプション WAF インスタンスでのみ利用可能です。 | デフォルト保護テンプレートを作成すると、そのテンプレートはカスタム保護テンプレートに関連付けられていないすべての保護対象オブジェクトまたはグループに適用されます。テンプレートは、新しく追加された保護対象オブジェクトにも自動的に適用されます。設定は手動で調整できます。 |
カスタム保護テンプレート | ビジネス要件に基づいてカスタマイズする保護テンプレート。カスタム保護テンプレートは手動で作成する必要があります。カスタム保護テンプレートは、単一のデフォルト保護テンプレートではビジネス要件を満たせないシナリオに適しています。 | [適用対象] を指定する必要があります。テンプレートは、テンプレートに関連付けられている保護対象オブジェクトおよびオブジェクトグループにのみ適用されます。 |
前提条件
アクティブな 従量課金 WAF 3.0 サービスが必要です。
Web サービスを 保護対象オブジェクトおよび保護対象オブジェクトグループ として WAF 3.0 に追加済みであること。
スキャン保護テンプレートの作成
WAF は、デフォルトで有効になっている初期デフォルト保護テンプレートを提供します。カスタムルールを有効にするには、保護テンプレートを作成し、関連するルールを設定する必要があります。スキャン保護テンプレートを作成するには、次の手順を実行します。
Web Application Firewall 3.0 コンソールにログインします。トップメニューバーから、WAF インスタンスのリソースグループとリージョン (中国本土 または 中国本土以外) を選択します。
左側のナビゲーションウィンドウで、 を選択します。
Web コア保護 ページの下部にある スキャン保護 セクションで、テンプレートの作成 をクリックします。
[テンプレートの作成 - スキャン保護] パネルで、パラメーターを設定し、[OK] をクリックします。
パラメーター
説明
テンプレート名
テンプレートの名前を指定します。
名前は 1~255 文字で、漢字、大文字と小文字、数字、ピリオド (.)、アンダースコア (_)、ハイフン (-) を使用できます。
デフォルトテンプレートとして保存
デフォルトの保護テンプレートでは、テンプレートを適用するオブジェクトを指定する必要はありません。テンプレートは、カスタム保護テンプレートに関連付けられていないすべての保護対象オブジェクトおよびオブジェクトグループに適用されます。これには、新しく追加された保護対象オブジェクトおよびオブジェクトグループや、カスタム保護テンプレートから削除されたものが含まれます。デフォルトテンプレートから手動で削除することもできます。保護モジュールごとに設定できるデフォルトテンプレートは 1 つだけであり、デフォルトテンプレートはテンプレート作成時にのみ設定できます。
ルール設定
ルール設定を構成します。スキャン保護モジュールの保護テンプレートは、1 つのルールセットのみをサポートします。ルールセットは、次の 3 種類のルールで構成されます。
高頻度スキャンブロック
[高頻度スキャンブロック] をオンにすると、次の設定が自動的に有効になります: IP アドレス (統計およびブロック対象) が、現在の保護対象オブジェクトに設定されたコア保護ルールモジュールの保護ルールを 20 回 (コア保護ルールの保護ルールのトリガー) 以上トリガーし、60 秒 (時間範囲) 以内に 2 つ (トリガーされるルールの最大数) 以上の保護ルールをトリガーした場合、その IP アドレスはブラックリストに追加され、1,800 秒 (ブロック期間) 間ブラックリストに残ります。WAF は、その IP アドレスから送信されたリクエストをブロックまたはモニターします。
ルール設定を変更するには、[詳細設定] をクリックします。
ディレクトラバーサルブロック
[ディレクトラバーサルブロック] をオンにすると、次の設定が自動的に有効になります: IP アドレス (統計およびブロック対象) が保護対象オブジェクトへのリクエストに 50 回 (リクエストの最大数) 以上使用され、10 秒 (時間範囲) 以内に 50 (存在しないディレクトリの最大数) 以上の存在しないディレクトリにアクセスし、HTTP 404 状態コードが応答で返される状態コードの 70% (HTTP 404 状態コードの最大パーセンテージ) を占める場合、その IP アドレスはブラックリストに追加されます。WAF は、その IP アドレスから送信されたリクエストをブロックまたはモニターします。
説明ディレクトリのスキャン統計には、
.jsや.pngなどの静的 Web ファイルタイプは含まれません。ルール設定を変更するには、[詳細設定] をクリックします。
スキャナーブロック:
[スキャナーブロック] をオンにすると、一般的なスキャナーがブラックリストに追加されます。スキャナーには、sqlmap、AWVS、Nessus、Appscan、Webinspect、Netsparker、Nikto、RSAS が含まれます。WAF は、これらのスキャナーからのリクエストをブロックまたはモニターします。
操作
リクエストがルールに一致した場合に WAF に実行させたい操作を選択します。有効な値:
ブロック: ルールに一致するリクエストをブロックし、リクエストを開始したクライアントにブロックページを返します。
説明デフォルトでは、WAF は事前設定されたブロックページを返します。カスタム応答機能を使用して、カスタムブロックページを設定できます。詳細については、「カスタム応答モジュールの保護ルールを設定してカスタムブロックページを設定する」をご参照ください。
モニター: ルールに一致するリクエストをブロックせずにログに記録します。ルールに一致するリクエストに関するログをクエリし、保護パフォーマンスを分析できます。たとえば、ログに基づいて正当なリクエストがブロックされているかどうかを確認できます。
重要ログをクエリできるのは、WAF 機能の Simple Log Service が有効になっている場合のみです。詳細については、「WAF 機能の Simple Log Service を有効または無効にする」をご参照ください。
[モニター] を選択した場合、ルールでドライランを実行して、ルールが通常のリクエストをブロックするかどうかを確認できます。ルールがドライランに合格した場合、[操作] パラメーターを [ブロック] に設定できます。
説明セキュリティレポート ページでは、モニターモードまたはブロックモードで一致したルールの詳細を表示できます。詳細については、「セキュリティレポート」をご参照ください。
適用対象
設定済みの保護対象オブジェクトおよび保護対象オブジェクトグループから、このテンプレートを適用するものを選択します。
保護対象オブジェクトまたはオブジェクトグループは、1 つのスキャン保護テンプレートにのみ関連付けることができます。デフォルトの保護テンプレートを設定した場合、そのテンプレートはデフォルトでカスタム保護テンプレートに関連付けられていないすべての保護対象オブジェクトおよびオブジェクトグループに適用されます。デフォルトのテンプレートを設定しない場合、デフォルトでは保護対象オブジェクトまたはオブジェクトグループは選択されません。テンプレートが適用されるオブジェクトは手動で変更できます。
デフォルトでは、新しく作成された保護テンプレートは有効になっています。テンプレートリストの保護テンプレートに対して、次の操作を実行できます。
テンプレートに関連付けられている 保護対象 / グループ の数を表示します。
ステータス 列のスイッチをオンまたはオフにして、テンプレートを有効または無効にします。
[操作] 列の 編集 または 削除 をクリックして、テンプレートを変更または削除します。
テンプレート名の左側にある
アイコンをクリックして、テンプレート内のルールを表示および管理します。ルールを見つけて [IP アドレスのブロック解除] をクリックし、ルールによってブロックされている IP アドレスのブロックを解除します。
重要[IP アドレスのブロック解除] は、IP アドレスが [高頻度スキャンブロック] または [ディレクトラバーサルブロック] 保護ルールによってブロックされている場合にのみ実行できます。
[IP アドレスのブロック解除] は、関連するルールとテンプレートが有効になっている場合にのみ実行できます。
次のステップ
[セキュリティレポート] ページの [スキャン保護] タブで、ルールの保護詳細を表示できます。詳細については、「セキュリティレポート」をご参照ください。
関連ドキュメント
WAF 3.0 の保護オブジェクト、保護モジュール、および保護プロセスの詳細については、「保護設定の概要」をご参照ください。
API 操作を呼び出して保護テンプレートを作成する方法の詳細については、「CreateDefenseTemplate」をご参照ください。
コア保護ルールモジュールの保護ルールを作成し、ルールを設定する方法の詳細については、「CreateDefenseRule」をご参照ください。