記事一覧へ

WAFログ連携によってご提供可能な機能について

AWS WAF ClassicAWS WAF v2旧プラン新プランAdvancedLegacy機能・仕様について

概要

WAFログ連携によって、以下4つの機能をご利用いただけます。

  • Dashboard画面のWAFログダッシュボード
  • WAFログ検索機能
  • 月次レポート機能
  • WAFログアラート(検知通知)機能

AWS WAFバージョンとRuleポリシーごとの設定方法の違いについて

ご利用のAWS WAFバージョンとRuleポリシーによって、ご利用可能なWAFログ連携方式と、それによって提供可能な機能が異なります。

AWS WAF v2 Advanced

WAFログ連携方式

Dashboard画面のWAFログダッシュボード

WAFログ検索機能

月次レポート機能

WAFログアラート(検知通知)機能

WAFログアラート(検知通知)の絞り込み機能

WAFログ保存期間

新方式

提供可

提供可

提供可

提供可

提供可

提供可

旧方式

対象外

対象外

対象外

対象外

対象外

対象外

※Advanced Ruleポリシーの場合、動的Denylistも有効になります。詳細はDenylistについてをご確認ください。

AWS WAF v2 Legacy

WAFログ連携方式

Dashboard画面のWAFログダッシュボード

WAFログ検索機能

月次レポート機能

WAFログアラート(検知通知)機能

WAFログアラート(検知通知)の絞り込み機能

WAFログ保存期間

新方式

提供可

提供可

提供可

提供可

提供可

新プランのみ提供可

旧方式

対象外

対象外

提供可

提供可

対象外

対象外

※WAFログ保存期間の設定は、新プランでのみご利用いただけます。詳細はWAFログ保存期間についてをご確認ください。

AWS WAF Classic Legacy

WAFログ連携方式

Dashboard画面のWAFログダッシュボード

WAFログ検索機能

月次レポート機能

WAFログアラート(検知通知)機能

WAFログアラート(検知通知)の絞り込み機能

WAFログ保存期間について

新方式

提供可

提供可

対象外

対象外

対象外

対象外

旧方式

対象外

対象外

提供可

提供可

対象外

対象外

Dashboard画面のWAFログダッシュボードについて

Dashboard画面についてのページをご確認ください。

WAFログ検索機能について

WAFログ連携を有効にしている場合に、WafCharmが取得したWAFログを検索できる機能です。

左メニューの [Analytics] 以下にある [Log] をクリックすると、WAFログ検索機能にアクセスできます。

使い方

画面上部のパネルが検索ツールで、結果がその下のパネル [Logリスト] に表示されます。

検索ツールには、以下の機能があります。

  • Target WAF Config: 検索対象のWAF Configを指定します。
  • タイムスタンプ (UTC): 検索したい時間をUTCで指定します。「10分」の場合、現在時刻から10分前のWAFログを検索します。選択肢にない範囲のWAFログを検索したい場合は、カスタムで日時を指定します。表示される日時は、デフォルトではローカルタイムゾーンになっています。UTCでの検索をご希望の場合には、[UTCで検索する] にチェックを入れてください。
  • WAF アクション: 実行されたアクションを指定します。Allow, Block, CAPTCHA, Challengeから選択可能で、これらすべてを対象とする場合はALLを選びます。なお、Countは対象外です。
  • 検索テキスト: 検索したい文字列を入力します。検索テキストの横にあるプルダウンメニューから一致条件を変更可能です。大文字・小文字は区別されます。

    例:検索テキストに「JP」と入力し、一致条件に「完全一致」を指定した場合、Countryが「JP」となっているWAFログにマッチします。特定のIPアドレスで検索した場合、検索したIPアドレスがクライアントIPに含まれるWAFログのみがマッチします。

    検索可能な項目には、以下のようなものが含まれます。

    • 終端ルール
    • 検知ルール
    • クライアントIP
    • Country(国コード)
    • Host
    • URI
    • Method
    • ラベル
    • User-Agent
    • JA4 Fingerprint

      など

上記の項目に入力し、 [検索する] ボタンをクリックすると [Logリスト] パネルに結果が表示されます。

[Logリスト] パネルの下部にある数字(スクリーンショット上だと 1-1 と表示されている部分)は、現在の表示範囲と、検索条件にマッチした件数です。
1-1と表示されている場合、マッチした件数は1件で、かつ1件目が表示されていることを表します。
1ページに記載可能な結果の数は100件のため、100件を超えると [表示開始番号] - [表示終了番号] | [総件数] といったフォーマットで表示されます。[表示開始番号] - [表示終了番号] は表示範囲のため、2ページ目以降に遷移すると「101 - 200」といった形で表示範囲の数が変わります。[総件数] は条件にマッチした件数のため、例えば検索結果にマッチした件数が「263件」だった場合、1ページ目では「1-100 | 263」と表示されます。

なお、検索条件にマッチした件数は、実際のリクエスト件数や、ブロック件数ではございません。あくまで、その時検索可能なWAFログの範囲の中で、検索した条件にマッチしたものの総数を表します。

Logリストの結果について

表示された結果をクリックすると、右側のパネルが開き、詳細をご確認いただけます。

  • リクエストID:WAFログ内に記載されるrequestIdです。
  • タイムスタンプ:WAFログ内に記載されるtimestampを元にした日時です。検索時に指定したタイムゾーン(ローカルあるいはUTC)で表示されます。
  • WAFアクション:WAFログ内に記載されるactionです。
  • 終端ルール:WAFログ内に記載されるterminatingRuleIdです。
  • 検知ルール:WAFログ内に記載されるnonTerminatingMatchingRulesあるいはexcludedRulesでCountにてマッチしたruleIdです。
  • クライアントIP:WAFログ内に記載されるclientIpです。
  • Country:WAFログ内に記載されるcountryの値です。国名と、WAFログ内の国コードの両方が記載されます。
  • ASN:WAFログ内に記載されているclientAsnの値です。WAFログ内に当該の項目が存在しない場合、空になります。
  • User-Agent:WAFログ内に記載されているuser-agentヘッダーの値です。WAFログ内に当該の項目が存在しない場合、空になります。
  • JA4 Fingerprint:WAFログ内に記載されているja4Fingerprintの値です。WAFログ内に当該の項目が存在しない場合、空になります。
  • Host:WAFログ内に記載されるHostです。
  • URI:WAFログ内に記載されるuriです。
  • Method:WAFログ内に記載されるhttpMethodです。
  • ラベル: WAFログ内に記載されるlabelsです。
  • Raw data:WAFログのローデータです。右上の [copy] ボタンをクリックすると、データをコピーできます。

以下の項目については、クリックすると対象の値を元に再検索が可能です。値をクリックすると、新しいタブで検索結果が表示されます。

項目

一致条件

備考

終端ルール

完全一致

検知ルール

部分一致

該当する値が複数ある場合、各行ごとに検索します。

クライアントIP

完全一致

Country

完全一致

ASN

完全一致

JA4 Fingerprint

完全一致

Host

完全一致

URI

完全一致

Method

完全一致

ラベル

部分一致

該当する値が複数ある場合、各行ごとに検索します。

再検索時の各種項目の値は、以下のとおりです。

  • 対象 WAF Config: 初期検索時の値が引き継がれます。
  • タイムスタンプ: 初期検索時の値が引き継がれます。
  • WAFアクション: 初期検索時の値が引き継がれます。
  • 検索テキスト: クリックした項目の値が自動で挿入されます。

制限事項・注意点

  • WAFログ検索機能で参照および表示する値は、すべてWAFログに含まれる値です。
    • 詳細については、AWS公式ドキュメントのログフィールドをご確認ください。
  • WAFログ検索機能のWAF アクションおよびActionは、WAFログ内の action の項目をもとにしています。WAFログ内の action には、リクエストに適用された終了アクション(terminating action)のみが記載されます。これらは、Allow、Block、CAPTCHA、Challengeのいずれかのみです。
  • WafCharmがダウンロードしたWAFログを元に検索しているため、お客様のAWS上に存在するS3バケット上のWAFログを参照することはありません。
  • WAFログ連携(新方式)を介してWafCharmがWAFログをダウンロードするまでの時間は5〜10分程度です。基本的には、当日分のWAFログを保持いただければWAFログを用いた機能に影響することはありません。
  • WafCharmアカウントの設定状況によって、閲覧可能なWAFログの件数に制限がある場合がございます(月次レポート機能およびWAFログアラートは対象外です)。詳細については、WAFログ保存期間についてをご確認ください。

月次レポート機能について

月次レポート機能は、登録されているWAF Configごとに転送されたWAFログを集計し、毎月月初に作成されるレポート機能です。

月次レポートは、左メニューの [Report] からご確認いただけます。

月次レポートには、以下の内容が記載されます。

  • Attack Type
    • 攻撃タイプの一覧
    • 攻撃タイプをクリックすると、円グラフの集計対象のフィルタリングができます。
  • Attack Typeの集計結果(円グラフ)
    • 検知したWAFログのAttack Typeの集計結果
  • Detected Rule Ranking
    • 検知したルールのランキング(Top 10)
  • Attack Country Ranking
    • 検知したリクエスト元の国のランキング(Top 10)
  • Attack IP Ranking
    • 検知したIPアドレスのランキング(Top 10)

月次レポートのデータをExcel形式で出力する方法

各レポートの右上にある、[Download Excel] というボタンをクリックいただくと、レポートのデータをダウンロード可能です。

Excelには、該当のレポート上で表示されているデータが記載されます。
例えば、Grand TotalのExcelをダウンロードするとすべてのWeb ACLのデータを集計したレポートのデータ、特定のWeb ACLのExcelをダウンロードするとそのWeb ACLのレポートのデータがダウンロードされます。

レポート上では各項目にホバーすることでツールチップとして表示していた件数などもデータとして閲覧可能です。また、お客様のニーズに応じてデータの表示方法をご調整いただけます。

制限事項・注意点

  • 月次レポートの作成が完了した際には、WafCharmアカウントをお持ちの方にお知らせを配信しております。
    • お知らせの配信停止を行われている場合には、お知らせをお受け取りいただけません。
  • 月次レポートは、先月分のWAFログを集計して作成しております。
  • 過去のWAFログを遡って取得することはできず、また転送されていないWAFログを集計対象とすることはできません。
  • 月次レポートの作成完了後に、作成し直すことはできません。
  • AWS にて対象の IP アドレスの地域を特定できていない場合、月次レポートの国名に「 - 」と出力されることがあります。
  • AWS より提供されているログフィルタリング機能の設定によっては、以下の影響があります。
    • action: Block のみ保存するフィルタリングを設定した場合:
      • BLOCK したログのみ作成されるため、通知機能と月次レポートは BLOCK のログをベースに作成されます。
    • action: Count のみ保存するフィルタリングを設定した場合:
      • ルール上の Count アクションと、Override to Count(Countへのオーバーライド)は異なるため、ご利用のルールアクションなどによって、検知通知と月次レポートが想定通りに動作しない可能性があります。
  • 制限ポリシーが付与されたアカウントの場合、許可されているWAF Configの月次レポートのみ閲覧可能です。Grand totalおよび許可されていないWAF Configの月次レポートは表示されません。

WAFログアラート(検知通知)機能について

WAFログアラート設定は、WAFログ連携(旧方式あるいは新方式)を設定している場合に有効化にすることで、指定したメールアドレス宛に検知通知メールを送信するための機能です。旧管理画面のNotification画面に該当します。

通知内容の絞り込みについて

WAFログアラートで送信する検知内容の絞り込みを行うためのオプションです。このオプションは、AWS WAF v2にて新方式でWAFログ連携を行っている場合にのみご利用いただけます。

本オプションで設定できる項目は、以下の通りです。

  • アクションの絞り込み
    • BlockログとCountログを通知する:BlockされたリクエストおよびCountでの検知のみ発生したリクエストのWAFログの情報が検知通知メールに記載されます。
    • Blockログだけを通知する:BlockされたリクエストのWAFログの情報のみが検知通知メールに記載されます。特定のリクエストがCountでの検知のみだった場合、その情報は検知通知メールには記載されません。
  • Denyリスト・動的Denyリストの検知通知
    • 通知する:Denylistあるいは動的Denylistで検知した場合、そのリクエストのWAFログの情報が検知通知メールに記載されます。
    • 通知しない:Denylistあるいは動的Denylistで検知した場合、そのリクエストのWAFログの情報は検知通知メールに記載されません。

BlockログおよびCountログの違いは以下の通りです。

  • Blockログ:最終的にBlockされたWAFログ。
  • Countログ:Countアクションのルールにマッチしたが、最終的にAllowされたWAFログ。

BlockログにはCountアクションのルールにマッチした際の情報も含まれますが、WAFログそのものの分類としては「Blockログ」に該当します。

それぞれの項目を設定した場合の通知有無は、以下の通りです。

アクションの絞り込み

Denyリスト・動的Denyリストの検知通知

通知対象のログ

通知有無

Matches Rule Nameに記載される値

BlockログとCountログを通知する

通知する

最終的にBlockされたWAFログ
Countアクションのルールにマッチしたが、最終的にAllowされたWAFログ

Block・Countのログはルール問わずすべて通知

nonTerminatingMatchingRules.ruleId

terminatingRule.ruleId

excludedRules.ruleId

Blockログだけを通知する

通知する

最終的にBlockされたWAFログ

Blockログすべてを通知

nonTerminatingMatchingRules.ruleId

terminatingRule.ruleId

excludedRules.ruleId

BlockログとCountログを通知する

通知しない

最終的にBlockされたWAFログ
Countアクションのルールにマッチしたが、最終的にAllowされたWAFログ

Denylist・動的Denylist以外で検知したBlockログ・Countログのみ通知

※Denylist・動的Denylistでの検知が含まれているWAFログは通知対象外になります。

nonTerminatingMatchingRules.ruleId

terminatingRule.ruleId

excludedRules.ruleId

Blockログだけを通知する

通知しない

最終的にBlockされたWAFログ

Denylist・動的Denylist以外でブロックした場合のみ通知

※Denylist・動的Denylistでのブロックの場合は通知対象外になります。

nonTerminatingMatchingRules.ruleId

terminatingRule.ruleId

excludedRules.ruleId

※検知通知内容に含まれるMatches Rule Name(検知したルール名)の値は、WAFログ上の nonTerminatingMatchingRules.ruleId 、 terminatingRule.ruleId または excludedRules.ruleId の値です。ルール名はフィルタリング対象ではありませんので、設定によって記載内容が変わることはありません。

通知内容

WafCharm Notificationの通知内容

  • メールタイトル: WafCharm Attack Detected.
  • メール差出人:WafCharm Notification wafcharm-notification@cscloud.co.jp
  • メール宛先:WafCharm Notification wafcharm-notification@cscloud.co.jp
  • メールBCC先:WAFログアラートにて登録した通知先メールアドレス
Attacks as follows were detected. 
This report includes up to 10 attacks detected in every buffer interval. 
If you need to check more information and attacks, visit your AWS console.

WebACL Name(Web ACL ID): <お客様 のWeb ACL Name> (<お客様 のWeb ACL ID>)

Matches Rule: wafcharm-blacklist-010090004-07 (<Rule ID>)
Time(UTC): Thu, 01 Apr 2020 20:20:00 GMT
Source IP: XXX.XXX.XXX.XXX
Source Country: JP
URI: /
Request ID: <AWS WAF v2の場合、該当するWAFログのリクエストID>

You may add/delete the email address to receive the detection notifications from the link below (login needed).
<WAF ConfigへのURL>

検知通知メールに記載される項目

  • Time(UTC): WAFログ上のtimestampの内容をUTC形式に変換したものが記載されます。
  • Source IP: WAFログ上のclientIpの内容が記載されます。XFFヘッダーオプションを使用している場合でも変わりません。
  • Source Country: WAFログ上のcountryの内容が記載されます。
  • Action: WAFログ上のactionの内容が記載されます。
  • URI: WAFログ上のuriの内容が記載されます。
  • Request ID: AWS WAF v2の場合、WAFログ上のrequestIdの内容が記載されます。AWS WAF Classicでのご利用の場合は対象外です。
  • Query String: リクエストにクエリが含まれていた場合、WAFログ上のargsの内容が記載されます。

Managed Rules Notificationの通知内容

AWS WAF Classicにて、WafCharmと弊社のManaged Rulesを併用されている場合にのみ通知が可能です。

  • メールタイトル: CSC Managed Rules Attack Detected.
  • メール差出人:WafCharm Notification wafcharm-notification@cscloud.co.jp
  • メール宛先:WafCharm Notification wafcharm-notification@cscloud.co.jp
  • メールBCC先:WAFログアラートにて登録したメールアドレス
Attacks as follows were detected.
This report includes up to 10 attacks detected in every buffer interval. 
If you need to check more information and attacks, visit your AWS console.

WebACL Name(Web ACL ID): < お客様 のWeb ACL Name> (< お客様 のWeb ACL ID>)

Managed Rule: Cyber Security Cloud Managed Rules for AWS WAF -HighSecurity OWASP Set-
Attack Type: suspicious_access
Field Type: url
Matches Rule Name: sample_suspicious_access-url-001
Matches Rule ID:<Rule ID>
Time(UTC): Thu, 1 Apr 2020 20:20:00 GMT
Source IP: XXX.XXX.XXX.XXX
Source Country: JP
URI: /

You may add/delete the email address to receive the detection notifications from the link below (login needed).
<WAF ConfigへのURL>

注意点

  • 1 メール (ログファイル) につき最大10件まで検知内容が記載されます。
  • 通知間隔は、WAFログの出力間隔に依存します。
    • S3バケットに直接出力している場合は、5分です。
    • Amazon Data Firehoseの場合は、Buffer intervalとBuffer sizeに設定した値に応じます。
  • WafCharm に AWS WAF のバージョン(Classicあるいはv2)が異なる Web ACL を登録し、各 Web ACL にて本機能を利用する場合、Lambdaは共有しないでください。
    • Classicとv2では使用するindex.mjsが異なります。誤ったAWS WAFバージョンのindex.mjsを使用した場合、WAFログの転送に失敗します。
  • AWS より提供されているログフィルタリング機能の設定によっては、以下の影響があります。
    • action: Block のみ保存するフィルタリングを設定した場合:
      • BLOCK したログのみ作成されるため、通知機能と月次レポートは BLOCK のログをベースに作成されます。
    • action: Count のみ保存するフィルタリングを設定した場合:
      • ルール上の Count アクションと、Override to Count(Countへのオーバーライド)は異なるため、ご利用のルールアクションなどによって、検知通知と月次レポートが想定通りに動作しない可能性があります。
  • AWS WAF Classicは、絞り込みオプションの対象外です。