Webアプリケーション・ファイアウォール・ログの詳細

Web Application Firewallログ(WAFログ)のロギング詳細。

リソース

  • Webアプリケーション・ファイアウォール

ログ・カテゴリ

API値(ID): コンソール(表示名) 説明
all すべてのログ すべてのWAFログ

可用性

WAFログは、商用レルムのすべてのリージョンで使用できます。

Web Application Firewallログの内容

WAFログ・レコードには次のフィールドが含まれます。

フィールド 説明
action WAFによって実行されるアクション。リクエストの追加処理が許可されている場合は"allow"となり、許可されていない場合は"block"になります。 allow
clientAddr クライアントIPアドレスNginx $remote_addr変数。 192.168.0.33:7870
countryCode クライアントISO alpha-2国コード。 "ca"
host この優先順位: リクエスト行のホスト名、または「ホスト」リクエストヘッダーフィールドのホスト名、またはリクエストに一致するサーバー名。Nginx $host変数。 192.168.0.103
listenerPort リクエストを受け入れたサーバーのポート。Nginx $server_port変数。 "80"
request.httpVersion リクエスト・プロトコル。通常は"HTTP/1.0"、"HTTP/1.1"または"HTTP/2.0"です。Nginx $server_protocol変数。 "HTTP/1.1"
request.id 16バイトのランダムバイトから生成された一意の要求識別子(16進数)。Nginx $request_id変数。 "f8860949459e94181e650d4049615a01"
request.method リクエスト・メソッド。通常は"GET"または"POST"です。Nginx $request_method変数。 “GET”
request.path 完全な元のリクエストURI (引数あり)。Nginx $request_uri変数。 "/console/css/%252e%252e%252fconsole.portal"
requestProtection.matchData リクエストの検査時にルール・アクションをトリガーしたデータ。文字列には、セミコロンで区切られたURIに存在するデータが含まれます。 'Test_data_1;Test_data_2;Test_data_3'
requestProtection.matchIds 一致した保護ルールIDおよびバージョンを含む文字列(要求検査用)。レポートでは、IDに3つのバージョン記号が追加されるため、ID=123およびversion=4は123004とレポートされます。エントリはセミコロンで区切られます。 "9301000_v001;9301100_v001;9301100_v001;9300000_v001"
requestProtection.matchRules リクエストが検査されたときに一致したリクエスト保護ルールのルール名。文字列には、セミコロンで区切られたルール名が含まれています。 'Rule_name_1;Rule_name_2;Rule_name_3'
responseProtection.matchData ルール・アクションをトリガーしたデータ(レスポンス検査内)。文字列には、セミコロンで区切られたURIに存在するデータが含まれます。 'Test_data_1;Test_data_2;Test_data_3'
応答コード 最終レスポンス・コードがクライアントに送信されました。Nginx $status変数。 "401"
応答サイズ バイト単位のフル・レスポンス・サイズ(ヘッダー+本文)。Nginx $bytes_sent変数。 "139"
requestAccessControl.matchRules 一致したリクエスト・アクセス・ルールのルール名。文字列には、セミコロンで区切られたルール名が含まれます。 'Rule_name_1;Rule_name_2;Rule_name_3'
responseAccessControl.matchRules 一致した応答アクセス・ルールのルール名。文字列には、セミコロンで区切られたルール名が含まれます。 'Rule_name_1;Rule_name_2;Rule_name_3'
backendStatusCode アップストリーム・サーバーから取得したレスポンスのステータス・コードを保持します。複数の応答のステータスコードは、コンマとコロンで区切られます。これは Nginxの $upstream_status変数です。 "200"
responseProtection.matchIds 一致した保護ルールIDおよびバージョンを含む文字列(要求検査用)。レポートでは、IDに3つのバージョン記号が追加されるため、ID=123およびversion=4は123004とレポートされます。エントリはセミコロンで区切られます。 '300_v004;25_v002;123_v001'
responseProtection.matchRules 一致したレスポンス保護ルールのルール名。セミコロンで区切られたルール名を含む文字列(例: 'Rule name 1;Rule name 2;Rule name 3'.) "Recomended Rules"
requestRateLimiting.matchRules 一致したレート・リミッタ・ルールのルール名。セミコロンで区切られたルール名を含む文字列。 'Rule_name_1;Rule_name_2;Rule_name_3'.
responseProvider
レスポンスの発生場所に関する情報が含まれます。
  • バックエンド(オリジン)から。
  • 一部のWAFモジュール(モジュールおよびルール名)から。
  • LB HTTP IPアクセス・ルールから。
  • LB HTTPメソッド・アクセス・ルールから。
  • LBリダイレクト・ルールから。
"requestProtection/Recomended Rules"
timestamp リクエストが受信された時点のESタイムスタンプ(ISO 8601形式のローカル時間)。 "2021-12-02T08:39:05Z"

サンプルWeb Application Firewallログ

{
  "datetime": 1638434349351,
  "logContent": {
    "data": {
      "clientAddr": "192.168.0.33",
      "countryCode": "ca",
      "host": "192.168.0.103",
      "listenerPort": "80",
      "request": {
        "httpVersion": "HTTP/1.1",
        "id": "f8860949459e94181e650d4049615a01",
        "method": "GET",
        "path": "/console/css/%252e%252e%252fconsole.portal"
      },
      "requestProtection": {
        "matchedData": "Matched Data: /%252e%252e%252f found within REQUEST_URI_RAW: /console/css/%252e%252e%252fconsole.portal;Matched Data: ../ found within REQUEST_URI: /console/css/../console.portal;Matched Data: ../ found within REQUEST_URI: /console/css/../console.portal",
        "matchedIds": "9301000_v001;9301100_v001;9301100_v001;9300000_v001",
        "matchedRules": "Recomended Rules"
      },
      "response": {
        "code": "401",
        "size": "139"
      },
      "responseProtection": {},
      "responseProvider": "requestProtection/Recomended Rules",
      "timestamp": "2021-12-02T08:39:05Z"
    },
    "id": "6ddc2351-d6a7-4a5e-b057-c04e50003f78-waf-388469",
    "oracle": {
      "compartmentid": "ocid1.compartment.oc1..<unique_ID>",
      "ingestedtime": "2021-12-02T08:39:15.367Z",
      "loggroupid": "ocid1.loggroup.oc1.iad.<unique_ID>",
      "logid": "ocid1.log.oc1.iad.<unique_ID>",
      "resourceid": "ocid1.webappfirewall.oc1.iad.<unique_ID>",
      "tenantid": "ocid1.tenancy.oc1..<unique_ID>"
    },
    "source": "lb_shapetest2-400",
    "specversion": "1.0",
    "subject": "",
    "time": "2021-12-02T08:39:09.351Z",
    "type": "com.oraclecloud.loadbalancer.waf"
  }
}