攻撃が急増したり、保護対象に異常が発生したりした場合、CloudMonitor はチームに即座に通知できます。このトピックでは、Web Application Firewall (WAF) のセキュリティイベントとトラフィックメトリクスのアラートルールを作成し、しきい値を超過した瞬間に適切な担当者にアラートが送信されるようにする方法について説明します。
前提条件
開始する前に、以下を確認してください。
[Web サイト設定] ページで WAF に Web サービスが追加されていること。 詳細については、「Web サイト設定の概要」をご参照ください。
アラート連絡先のセットアップ
アラートルールを作成する前に、通知を受け取る担当者を設定します。
CloudMonitor コンソールにログインします。CloudMonitor コンソール
左側のナビゲーションウィンドウで、[アラート] > [アラート連絡先] を選択します。
[アラート連絡先] タブで、[アラート連絡先の作成] をクリックします。
[アラート連絡先の設定] パネルで、アラート連絡先の名前、メールアドレス、Webhook URL を入力します。他のすべてのパラメーターはデフォルト値のままにします。
「アラート通知の言語」を [自動] のままにしてください。CloudMonitor は、Alibaba Cloud アカウントを作成する際に使用した言語に基づいて通知言語を選択します。
[OK] をクリックします。
[アラート連絡先グループ] タブで、[アラート連絡先グループの作成] をクリックします。
[アラート連絡先グループの作成]パネルで、グループ名を入力し、追加するアラート連絡先を選択して、[確認]をクリックします。または、既存のグループに複数の連絡先を追加するには、[アラート連絡先]タブに戻り、連絡先を選択して、[連絡先グループに追加]をクリックし、対象のグループを選択して、[OK]をクリックします。
この設定が完了すると、グループ内の連絡先は、グループに割り当てられたルールのアラート通知を受け取ります。
WAF セキュリティイベントのアラート設定
イベントトリガーのアラートルールを使用して、WAF が保護対象で攻撃、QPS 制限超過、または API セキュリティリスクを検出したときに通知を受け取ります。
検出の仕組み
攻撃タイプのイベントの場合、WAF はスライドウィンドウアルゴリズムを使用します。これは、1 分ごとに統計が収集される 10 分間のウィンドウです。次の両方の条件が同時に満たされたときにアラートがトリガーされます。
現在の 1 分間のブロックされた攻撃数が 600 を超える。
現在の 1 分間のブロック数が、過去 11 分間の平均を 3 標準偏差以上超える。
現在の 1 分間のブロック数が 11 分間の平均を下回ると、アラートはクリアされます。この設計により、一時的な急増がフィルタリングされ、持続的な攻撃の急増時にのみアラートがトリガーされるため、アラート疲労が軽減されます。
超過およびイベントタイプのイベントは、しきい値ベースのトリガーを使用します。詳細については、「検出可能なセキュリティイベント」をご参照ください。
セキュリティイベントアラートルールの作成
CloudMonitor コンソールにログインします。
左側のナビゲーションウィンドウで、[イベントセンター] > [システムイベント] を選択します。
[イベント監視] タブで、右上隅の [旧イベントアラームルール] をクリックし、[アラートルールの作成] をクリックします。表示されるダイアログボックスで、[レガシーシステムのイベント用アラートルールは引き続き作成されます] を選択します。
[イベントトリガーのアラートルールの作成/変更] パネルで、以下の表に従ってパラメーターを設定し、[OK] をクリックします。
| パラメーター | 説明 |
|---|---|
| アラートルール名 | アラートルールの名前。 |
| 製品タイプ | モニター対象の Alibaba Cloud サービスです。[WAF] を選択します。 |
| イベントタイプ | 監視するセキュリティイベントのカテゴリ。有効な値:攻撃、超過、イベント。 |
| イベントレベル | イベントの重大度レベル。すべての WAF 3.0 セキュリティイベントの重大度レベルは CRITICAL です。 |
| イベント名 | 監視する特定のセキュリティイベント。ドロップダウンリストで、名前に v3 を含むイベントは WAF 3.0 イベントであり、その他は WAF 2.0 イベントです。完全なリストについては、「検出可能なセキュリティイベント」をご参照ください。 |
| キーワードフィルタリング | オプションのコンテンツフィルター。[いずれかのキーワードを含む]:イベントコンテンツに指定されたキーワードのいずれかが含まれている場合、CloudMonitor は通知を送信します。[いずれのキーワードも含まない]:イベントコンテンツに指定されたキーワードのいずれも含まれていない場合、CloudMonitor は通知を送信します。 |
| SQLFilter | 高度なフィルタリングのためのオプションの SQL ステートメント。 |
| リソース範囲 | ルールがカバーするリソースの範囲。有効な値:[すべてのリソース] および [アプリケーショングループ]。 |
| 通知方法 | アラートグループと重大度ベースの通知チャネル:[重大] (ショートメッセージ + メール + Webhook)、[警告] (ショートメッセージ + メール + Webhook)、または [情報] (メール + Webhook)。 |
| SMQ | アラートを配信する Simple Message Queue (旧称:MNS) のキュー。 |
| Function Compute | アラートを配信する Function Compute 関数。 |
| URL コールバック | POST リクエストを介してアラート通知を受信する、公開アクセス可能な HTTP URL。設定の詳細については、「システムイベントトリガーのアラートのコールバック設定 (旧)」をご参照ください。 |
| Simple Log Service | アラートを配信する Simple Log Service Logstore。 |
| ミュート期間 | 未解決のアラートに対する繰り返しの通知間の最小間隔。有効な値:5 分、15 分、30 分、60 分、3 時間、6 時間、12 時間、24 時間。 |
ルールを保存すると、WAF が一致するセキュリティイベントを検出するたびに、割り当てられたグループの連絡先が通知を受け取ります。
最近のセキュリティイベントを照会するには、[イベント監視] タブに移動し、[WAF] を [クラウドサービス] ドロップダウンリストから選択し、[イベント名の選択] ドロップダウンリストから v3 を含むイベント名を選択します。[検索] をクリックして、WAF 3.0 のセキュリティイベントを表示します。
アラート受信後の対応
セキュリティイベント通知を受信したら、WAF コンソールに移動し、影響を受ける保護対象の[セキュリティイベント]ページを確認します。イベントタイプ、攻撃ソース IP、およびリクエストパターンを確認して、トラフィックが実際の攻撃であるか、正当なトラフィックの急増であるかを判断し、それに応じて対処します。
WAF メトリクスのアラート設定
しきい値ベースのアラートルールを使用して、保護対象のトラフィックおよびブロックメトリック — 例:QPS の増加、4xx/5xx エラー率、ブロック数 — をモニターします。
CloudMonitor コンソール にログインします。
左側のナビゲーションウィンドウで、アラート > アラートルール を選択します。
アラートルール ページで、アラートルールの作成 をクリックします。
アラートルールの作成 パネルで、以下の表に記載されているパラメーターを設定し、確認 をクリックします。
| パラメーター | 説明 |
|---|---|
| 製品 | モニタリング対象の Alibaba Cloud サービスです。WAF 3.0 を選択します。 |
| リソース範囲 | ルールがカバーするリソースの範囲です。[すべてのリソース]:すべての WAF 3.0 リソースに適用されます。[アプリケーショングループ]:指定されたアプリケーショングループ内のリソースに適用されます。[インスタンス]:特定の WAF 3.0 リソースに適用されます。 |
| ルール説明 | アラートをトリガーするメトリック条件です。[ルールを追加] をクリックし、[ルール説明の設定] パネルで、アラートルール、メトリクスタイプ、メトリック、しきい値、アラートレベルを設定してから、[OK] をクリックします。利用可能な WAF 3.0 のメトリックについては、「モニタリング可能なメトリック」をご参照ください。 |
| ミュート期間 | 未解決のアラートに対して繰り返し通知が送信されるまでの最小間隔です。有効値:1 分、5 分、15 分、30 分、60 分、3 時間、6 時間、12 時間、24 時間。メトリック条件が満たされると、アラートがトリガーされます。ミュート期間が終了する前に条件が再度満たされた場合、CloudMonitor は通知を再送信しません。ミュート期間が終了した後、アラートがまだ未解決の場合、CloudMonitor は通知を再送信します。 |
| 有効期間 | ルールがアクティブになるタイムウィンドウです。CloudMonitor はこの期間内にのみリソースをモニタリングし、アラートを生成します。 |
| アラート連絡先グループ | 通知先のアラートグループです。設定手順については、「アラート連絡先の設定」をご参照ください。 |
| アラートコールバック | POST リクエストを介してアラート通知を受信するための、パブリックアクセス可能な HTTP URL です。[詳細設定] をクリックして設定します。設定の詳細については、「アラートコールバック機能を使用してしきい値超過アラートに関する通知を送信する」をご参照ください。 |
| Auto Scaling | 有効にすると、アラートがトリガーされたときにスケーリングルールがトリガーされます。[詳細設定] をクリックし、[リージョン]、[ESS グループ]、[ESS ルール] の各パラメーターを設定します。詳細については、「スケーリンググループの管理」および「スケーリングルールの管理」をご参照ください。 |
| Log Service | 有効にすると、アラートがトリガーされたときにアラート情報が Simple Log Service Logstore に書き込まれます。[詳細設定] をクリックし、[リージョン]、[ProjectName]、[Logstore] の各パラメーターを設定します。詳細については、「スタートガイド」をご参照ください。 |
| Simple Message Queue (旧称:MNS) - トピック | 有効にすると、アラートがトリガーされたときにアラート情報が Simple Message Queue (旧称:MNS) のトピックに書き込まれます。[詳細設定] をクリックし、[リージョン] と [topicName] のパラメーターを設定します。詳細については、「トピックの作成」をご参照ください。 |
| モニタリングデータがない場合のアラート処理方法 | メトリックデータが存在しない場合の動作です。有効値:[何もしない] (デフォルト)、[アラート通知を送信]、[正常として処理]。[詳細設定] をクリックして設定します。 |
| タグ | アラートルールにアタッチするタグで、タグ名とタグ値で構成されます。 |
ルールを保存すると、[アラートルール] ページに表示されます。特定の WAF メトリックのルールを検索するには、[製品] ドロップダウンリストから [WAF3.0] を選択し、[メトリック名] ドロップダウンリストから [resource] を選択して、右側のリストからメトリックを選択します。
「メトリック名」ドロップダウンリストから選択した値によって、表示される WAF バージョンのメトリックが決まります:
ドメイン: WAF 2.0 メトリック
リソース: WAF 3.0 メトリック
インスタンス: ハイブリッドクラウド WAF メトリック (v3 を含むメトリックは WAF 3.0 メトリック、その他は WAF 2.0 メトリックです)検出可能なセキュリティイベント
次の表に、イベントトリガーのアラートルールで利用可能な WAF 3.0 セキュリティイベントを示します。
| イベントタイプ | イベント名 | 重大度 | トリガー条件 |
|---|---|---|---|
| 攻撃 | wafv3_event_aclattack (カスタムルール) | CRITICAL | 1 分ごとの統計を持つ 10 分間のスライドウィンドウを使用します。現在の 1 分間のブロックされた攻撃数が 600 を超え、かつ 11 分間の平均を 3 標準偏差以上超えた場合にトリガーされます。ブロック数が 11 分間の平均を下回るとクリアされます。 |
| 攻撃 | wafv3_event_ccattack | CRITICAL | 上記と同じメカニズム。 |
| 攻撃 | wafv3_event_webattack | CRITICAL | 上記と同じメカニズム。 |
| 攻撃 | wafv3_event_webscan | CRITICAL | 上記と同じメカニズム。 |
| 超過 | xray_wafv3_event_qps_exceed | — | WAF エディションの QPS 制限を超過した場合にトリガーされます。エディションの制限については、「エディション」をご参照ください。 |
| 超過 | xray_wafv3_event_cost_protection | — | トラフィック課金保護のしきい値を超過した場合にトリガーされます。 |
| イベント | wafv3_event_apisec | — | API セキュリティモジュールが高リスクまたは高リスクイベントを検出した場合にトリガーされます。 |
監視可能なメトリクス
次のメトリクスは、しきい値ベースのアラートルールで利用できます。すべてのメトリクスは、保護対象のディメンションにスコープされます。
WAF で手動で追加された保護対象は、次のトラフィック関連メトリクスをサポートしていません:4XX_ratio_v3、5XX_ratio_v3、qps_v3、qps_ratio_v3、および qps_ratio_down_v3。
| メトリック | 説明 | 単位/フォーマット |
|---|---|---|
| 4XX_ratio_v3 | 1 分あたりの HTTP 4xx 応答の割合。HTTP 405 応答は除外されます。 | 小数 (例: 0.05 = 5%) |
| 5XX_ratio_v3 | 1 分あたりの HTTP 5xx 応答の割合。 | 小数 |
| acl_blocks_5m_v3 | 過去 5 分間にアクセスの制御ルールによってブロックされたリクエストの数。 | カウント |
| acl_rate_5m_v3 | 過去 5 分間にアクセスの制御ルールによってブロックされたリクエストの割合。 | 小数 |
| cc_blocks_5m_v3 | 過去 5 分間に HTTP フラッド攻撃対策ルールによってブロックされたリクエストの数。 | カウント |
| cc_rate_5m_v3 | 過去 5 分間に HTTP フラッド攻撃対策ルールによってブロックされたリクエストの割合。 | 小数 |
| waf_blocks_5m_v3 | 過去 5 分間に Web アプリケーション攻撃防止ルールによってブロックされたリクエストの数。 | カウント |
| waf_rate_5m_v3 | 過去 5 分間に Web アプリケーション攻撃防止ルールによってブロックされたリクエストの割合。 | 小数 |
| QPS_V3 | 1 秒あたりのクエリ数 (QPS)。 | カウント |
| qps_ratio_v3 | 1 分あたりの QPS 増加率。 | パーセンテージ |
| qps_ratio_down_v3 | 1 分あたりの QPS 減少率。 | パーセンテージ |
次のステップ
低リスクおよび中リスクの API セキュリティアラートをプッシュするには (CloudMonitor は高リスクアラートのみをカバーします)、「API セキュリティアラートをプッシュするためのベストプラクティス」をご参照ください。