このトピックでは、Web Application Firewall (WAF) ログのフィールドについて説明します。
フィールドインデックス
次の表に、WAF ログがサポートするフィールドを示します。フィールド名で検索できます。Upgrade to WAF 3.0
先頭文字 | フィールド |
a |
|
b |
|
c |
|
d |
|
f | クライアントリクエストに対して実行される最終的な保護アクションに関連するフィールド: final_action | final_plugin | final_rule_id | final_rule_type |
h |
|
j |
|
m |
|
n | トリガーされたアクションに関連するフィールド:non_terminating_rules |
q | クエリ文字列に関するフィールド:querystring |
r |
|
s |
|
t |
|
u |
|
w |
|
必須フィールド
必須フィールドは常に WAF ログに含まれます。
名前 | 説明 | 例 |
bypass_matched_ids | クライアントリクエストを許可する WAF ルールの ID。これには、許可アクションで設定されたホワイトリストルールとカスタム緩和ポリシーが含まれます。 リクエストがこのタイプの複数のルールにヒットした場合、すべてのルール ID が記録されます。複数のルール ID はコンマ (,) で区切られます。 | 283531 |
content_type | リクエストのコンテンツタイプ。 | application/x-www-form-urlencoded |
dst_port | リクエストの宛先ポート。 | 443 |
final_action | WAF がクライアントリクエストに対して実行する最終的な保護アクション。有効な値:
WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 このフィールドは、リクエストがどの保護モジュールもトリガーしない場合には記録されません。これには、リクエストがリクエストを許可するルールにヒットした場合や、クライアントがスライダー認証または JavaScript チャレンジに合格した場合などが含まれます。 リクエストが複数の保護モジュールをトリガーした場合、最終的な保護アクションのみが記録されます。保護アクションは、ブロック (block) > 厳格なスライダー認証 (captcha_strict) > スライダー認証 (captcha) > JavaScript チャレンジ (js) の降順で優先されます。 | block |
final_plugin | クライアントリクエストに対して実行された最終的な保護アクション (final_action) に対応する保護モジュール。有効な値:
このフィールドは、リクエストがどの保護モジュールもトリガーしない場合には記録されません。これには、リクエストがリクエストを許可するルールにヒットした場合や、クライアントがスライダー認証または JavaScript チャレンジに合格した場合などが含まれます。 リクエストが複数の保護モジュールをトリガーした場合、最終的な保護アクション (final_action) に対応する保護モジュールのみが記録されます。 | waf |
final_rule_id | クライアントリクエストに適用される保護ルールの ID。これは、final_action に対応するルールの ID です。 | 115341 |
final_rule_type | クライアントリクエストに適用される保護ルール (final_rule_id) のサブタイプ。 たとえば、 | xss/webShell |
host | クライアントリクエストヘッダーの Host フィールド。このフィールドは、アクセスされたドメイン名を示します。ビジネス設定によっては、IP アドレスの場合もあります。 | api.example.com |
http_cookie | クライアントリクエストヘッダーの Cookie フィールド。このフィールドは、ソースクライアントの Cookie 情報を示します。 | k1=v1;k2=v2 |
http_referer | クライアントリクエストヘッダーの Referer フィールド。このフィールドは、リクエストのソース URL を示します。 リクエストにソース URL がない場合、このフィールドは | http://example.com |
http_user_agent | クライアントリクエストヘッダーの User-Agent フィールド。このフィールドには、ソースクライアントのブラウザやオペレーティングシステムの識別子などの情報が含まれます。 | Dalvik/2.1.0 (Linux; U; Android 10; Android SDK built for x86 Build/QSR1.200715.002) |
http_x_forwarded_for | クライアントリクエストヘッダーの X-Forwarded-For (XFF) フィールド。このフィールドは、HTTP プロキシまたは負荷分散サービスを介して Web サーバーに接続するクライアントの元の IP アドレスを識別するために使用されます。 | 47.100.XX.XX |
https | リクエストが HTTPS リクエストかどうかを示します。
| on |
matched_host | クライアントリクエストに一致する WAF の保護対象オブジェクト。オブジェクトは、クラウドサービスインスタンスまたはドメイン名です。 説明 WAF の保護対象オブジェクトには、ワイルドカードドメイン名を使用できます。クライアントリクエストがワイルドカードドメイン名に一致する場合があります。たとえば、*.aliyundoc.com を WAF に追加すると、www.aliyundoc.com へのリクエストが *.aliyundoc.com に一致する可能性があります。 | *.aliyundoc.com |
request_uri | リクエストパスとリクエストパラメーター。 | /news/search.php?id=1 |
real_client_ip | リクエストを開始したクライアントのリアル IP アドレス。WAF はリクエストを分析した後に IP アドレスを決定します。この IP アドレスをサービスで直接使用できます。 WAF がリアルクライアント IP アドレスを特定できない場合、このフィールドは | 192.0.XX.XX |
region | WAF インスタンスのリージョン ID。有効な値:
| cn |
src_port | WAF に直接接続するポート。 WAF がクライアントに直接接続されている場合、このフィールドはクライアントポートを示します。CDN などのレイヤー 7 プロキシが WAF の前にデプロイされている場合、このフィールドは WAF の前にデプロイされているプロキシのポートを示します。 | 80 |
src_ip | WAF に直接接続する IP アドレス。 WAF がクライアントに直接接続されている場合、このフィールドはクライアント IP アドレスを示します。CDN などのレイヤー 7 プロキシが WAF の前にデプロイされている場合、このフィールドは WAF の前にデプロイされているプロキシの IP アドレスを示します。 | 198.51.XX.XX |
start_time | クライアントがリクエストを開始した時刻。単位:秒。 | 1696534058 |
request_length | クライアントリクエストのバイト数。これには、リクエストライン、リクエストヘッダー、リクエストボディが含まれます。単位:バイト。 | 111111 |
request_method | クライアントリクエストのメソッド。 | GET |
request_time_msec | WAF がクライアントリクエストを処理するのにかかる時間。単位:ミリ秒。 | 44 |
request_traceid | WAF がクライアントリクエストに対して生成する一意の識別子。 | 7837b11715410386943437009ea1f0 |
request_traceid_origin | リクエストの元の ID。 | 7ce319151*****18890e |
remote_region_id | IP アドレスに対応する省 ID。 | 410000 |
server_protocol | クライアントと WAF 間のプロトコル。 重要 このフィールドは、FC から WAF に追加された保護対象オブジェクトではサポートされていません。 | HTTP/1.1 |
ssl_cipher | クライアントリクエストが使用する暗号スイート。 | ECDHE-RSA-AES128-GCM-SHA256 |
ssl_protocol | クライアントリクエストが使用する SSL/TLS プロトコルとバージョン。 | TLSv1.2 |
status | WAF がクライアントリクエストに対して返す HTTP ステータスコード。たとえば、200 はリクエストが成功したことを示します。 | 200 |
time | クライアントがリクエストを開始した時刻。時刻は ISO 8601 標準の UTC です。時刻のフォーマットは | 2018-05-02T16:03:59+08:00 |
upstream_addr | オリジンサーバーの IP アドレスとポート。値のフォーマットは 重要 このフィールドは、FC から WAF に追加された保護対象オブジェクトではサポートされていません。 | 198.51.XX.XX:443 |
upstream_response_time | オリジンサーバーが WAF からのオリジンフェッチリクエストを処理するのにかかる時間。単位:秒。 | 0.044 |
upstream_status | オリジンサーバーが WAF からのオリジンフェッチリクエストに対して返す HTTP ステータスコード。たとえば、200 はリクエストが成功したことを示します。 | 200 |
user_id | WAF インスタンスが属する Alibaba Cloud アカウントの ID。 | 17045741******** |
オプションフィールド
WAF ログに含めるオプションフィールドを選択できます。WAF は、有効にしたオプションフィールドのみを記録します。
オプションフィールドを有効にすると、より多くのログストレージ容量を消費します。十分なログストレージ容量がある場合は、より多くのオプションフィールドを有効にして、より包括的なログ分析を行うことができます。
名前 | 説明 | 例 |
account | 抽出されたアカウント情報。まず、保護対象オブジェクトの アカウント抽出設定を完了する必要があります。 | user1 |
acl_action | クライアントリクエストがヒットした IP ブラックリストルールまたはカスタムルール (アクセス制御) の保護アクション。有効な値:
WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | block |
acl_rule_id | クライアントリクエストがヒットした IP ブラックリストルールまたはカスタムルール (アクセスの制御) の ID。 | 151235 |
acl_rule_type | クライアントリクエストがヒットした IP ブラックリストルールまたはカスタムルール (アクセス制御) のタイプ。有効な値:
| custom |
acl_test | クライアントリクエストがヒットした IP ブラックリストルールまたはカスタムルール (アクセス制御) の保護モード。有効な値:
説明 acl_test が true の場合、acl_action のデフォルト値は block です。これは、ACL ルールにヒットしたリクエストに対して、ACL モジュールで実行されるアクションが監視であることを示します。 | false |
antiscan_action | クライアントリクエストがヒットしたスキャン保護ルールの保護アクション。唯一の有効な値は block で、リクエストがブロックされることを示します。 WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | ブロック |
antiscan_rule_id | クライアントリクエストがヒットしたスキャン保護ルールの ID。 | 151235 |
antiscan_rule_type | クライアントリクエストがヒットしたスキャン保護ルールのタイプ。有効な値:
| highfreq |
antiscan_test | クライアントリクエストがヒットしたスキャン保護ルールの保護モード。有効な値:
| false |
送信バイト数 | サーバーがクライアントに返すレスポンスボディのバイト数。レスポンスヘッダーは含まれません。単位: バイト。 重要 このフィールドは、FC から WAF に追加された保護対象オブジェクトではサポートされていません。 | 1111 |
アクション | クライアントリクエストがヒットしたカスタムルール (頻度制御) の保護アクション。有効な値:
WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | ブロック |
cc_rule_id | クライアントリクエストがヒットしたカスタムルール (頻度制御) の ID。 | 151234 |
cc_rule_type | クライアントリクエストがヒットしたルールのタイプ。有効な値:
| custom |
cc_test | クライアントリクエストがヒットしたカスタムルール (頻度制御) の保護モード。有効な値:
| false |
リクエスト本文 | リクエストボディ。最大 8 KB のデータを保存できます。 | test123curl -ki https://automated-acltest02.***.top/ --resolve automated-acltest02.***.top:443:39.107.XX.XX |
request_headers_all | リクエストのすべてのヘッダーを記録します。 | { "Accept": "*/*", "Accept-Encoding": "gz**, de**te, **r", "Accept-Language": "zh-Hans-CN;q=1", "Connection": "keep-***ve", "Content-Length": "1**6", "Content-Type": "application/json", "Cookie": "cookie_key=***; acw_tc=0abc****opqrstuvwxyz0***7890;", "Host": "1.****.****.1", ... } |
リクエストヘッダー | カスタムリクエストヘッダー。このフィールドを選択した後、リクエストヘッダーの名前を入力する必要があります。最大 5 つのカスタムリクエストヘッダーを追加できます。複数のヘッダー名はコンマ (,) で区切ります。 重要 このフィールドは、MSE または FC から WAF に追加された保護対象オブジェクトではサポートされていません。 | {"ttt":"abcd"} |
server_port | リクエストされた WAF ポート。 重要 このフィールドは、MSE、ALB、または FC から WAF に追加された保護対象オブジェクトではサポートされていません。 | 443 |
waf_action | クライアントリクエストがヒットした Web コア保護ルールの保護アクション。唯一の有効な値は block で、リクエストがブロックされることを示します。 WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | block |
WAF ルール ID | クライアントリクエストがヒットした Web コア保護ルールの ID。 説明 このルール ID は、[セキュリティレポート] ページの [ウェブコア保護ルール] タブのルールヒットレコードのリストに表示されるルール ID に対応します。 詳細については、「セキュリティレポート」をご参照ください。 | 113406 |
waf_rule_type | クライアントリクエストがヒットした Web コア保護ルールのタイプ。有効な値:
| xss |
waf_test | クライアントリクエストがヒットした Web コア保護ルールの保護モード。有効な値:
| false |
major_protection_action | クライアントリクエストがヒットした重要イベントサポートテンプレートの保護アクション。WAF の保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | block |
メジャー保護ルール ID | クライアントリクエストがヒットした重要イベントサポートテンプレート内のルールの ID。 | 2221 |
major_protection_rule_type | クライアントリクエストがヒットした重要イベントサポートテンプレート内のルールのタイプ。有効な値:
| waf_blocks |
major_protection_test | クライアントリクエストがヒットした重要イベントサポートの保護モード。有効な値:
| true |
response_set_cookie | クライアントレスポンスで送信される Cookie。 重要 このフィールドは、ALB、MSE、FC などのサービスから WAF に追加された保護対象オブジェクトではサポートされていません。 | acw_tc=781bad3616674790875002820e2cebbc55b6e0dfd9579302762b1dece40e0a;path=\/;HttpOnly;Max-Age=1800 |
レスポンスヘッダー | クライアントのすべてのレスポンスヘッダー。 重要 このフィールドは、ALB、MSE、FC などのサービスから WAF に追加された保護対象オブジェクトではサポートされていません。 | {"transfer-encoding":"chunked","set-cookie":"acw_tc=***;path=\/;HttpOnly;Max-Age=1800","content-type":"text\/html;charset=utf-8","x-powered-by":"PHP\/7.2.24","server":"nginx\/1.18.0","connection":"close"} |
response_info | クライアントのレスポンスボディ。最大 16 KB のデータを保存できます。content-encoding ヘッダーが gzip の場合、レスポンスボディは Base64 エンコーディングで記録されます。 重要 このフィールドは、ALB、MSE、FC などのサービスから WAF に追加された保護対象オブジェクトではサポートされていません。 | $_POST received: <br/>Array ( [***] => ) <hr/> $GLOBALS['HTTP_RAW_POST_DATA'] received: <br/> <hr/> php://input received: *** |
request_path | リクエストの相対パス。これは、リクエストされた URL のうち、ドメイン名に続き、疑問符 (?) の前にある部分です。これにはクエリ文字列は含まれません。 | /news/search.php |
dlp_action | クライアントリクエストがヒットしたデータ漏洩防止ルールの保護アクション。有効な値:
WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | block |
dlp_rule_id | クライアントリクエストがヒットしたデータ漏洩防止ルールの ID。 | 20031483 |
dlp_test | クライアントリクエストがヒットしたデータ漏洩防止ルールの保護モード。有効な値:
| true |
querystring | クライアントリクエストのクエリ文字列。これは、リクエストされた URL のうち、疑問符 (?) の後の部分です。 | title=tm_content%3Darticle&pid=123 |
scene_action | クライアントリクエストがヒットしたボット管理のシナリオ固有の設定ルールの保護アクション。有効な値:
WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | js |
scene_id | クライアントリクエストがヒットしたボット管理のシナリオ固有の構成ルールのシナリオ ID。 | a82d992b_bc8c_47f0_87ce_****** |
scene_rule_id | クライアントリクエストがヒットしたボット管理のシナリオ固有の構成ルールの ID と基本保護構成ルールの ID。 | js-a82d992b_bc8c_47f0_87ce_****** |
シーンルールタイプ | クライアントリクエストがヒットしたボット管理のシナリオ固有の設定ルールのタイプ。有効な値:
| bot_aialgo |
scene_test | クライアントリクエストがヒットしたボット管理のシナリオ固有の設定ルールの保護モード。有効な値:
| true |
remote_addr | WAF に直接接続する IP アドレス。 WAF がクライアントに直接接続されている場合、このフィールドはクライアント IP アドレスを示します。CDN などのレイヤー 7 プロキシが WAF の前にデプロイされている場合、このフィールドは WAF の前にデプロイされているプロキシの IP アドレスを示します。 | 198.51.XX.XX |
remote_port | WAF に直接接続するポート。 WAF がクライアントに直接接続されている場合、このフィールドはクライアントポートを示します。CDN などのレイヤー 7 プロキシが WAF の前にデプロイされている場合、このフィールドは WAF の前にデプロイされているプロキシのポートを示します。 | 80 |
waf_hit | ヒットした基本保護攻撃のコンテンツ。 | {"postarg_values":{"hit":["${jndi:ldap://"],"raw":"postarg.log4j=${jndi:ldap://"}} |
compliance_hit | ヒットしたプロトコル違反攻撃のコンテンツ。 | **********7df271da040a |
compliance_action | クライアントリクエストがヒットしたプロトコルコンプライアンスルールの保護アクション。唯一の有効な値は block で、リクエストがブロックされることを示します。 WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | block |
compliance_rule_id | クライアントリクエストがヒットしたプロトコルコンプライアンスルールの ID。 | 300033 |
compliance_rule_type | クライアントリクエストがヒットしたプロトコルコンプライアンスルールのタイプ。唯一の有効な値は protocol_violation です。 | protocol_violation |
compliance_test | クライアントリクエストがヒットしたプロトコルコンプライアンスルールの保護モード。有効な値:
| false |
sema_hit | ヒットしたセマンティック分析攻撃のコンテンツ。 | {"queryarg_values":{"hit":["\" from mysql.user"],"raw":"queryarg.y=\" from mysql.user"}} |
sema_action | クライアントリクエストがヒットしたセマンティック分析ルールの保護アクション。唯一の有効な値は block で、リクエストがブロックされることを示します。 WAF 保護アクションの詳細については、「WAF 保護アクション (*_action) の説明」をご参照ください。 | ブロック |
sema_rule_id | クライアントリクエストがヒットしたセマンティック分析ルールの ID。 | 810015 |
sema_rule_type | クライアントリクエストがヒットしたセマンティック分析ルールのタイプ。唯一の有効な値は sqli で、SQL インジェクション保護ルールを示します。 | sqli |
sema_test | クライアントリクエストがヒットしたセマンティック分析ルールの保護モード。有効な値:
| false |
wxbb_info_tbl | ヒットしたボット管理のアプリ保護ルールのデバイス情報。 | { "abnormal_imei": "0", "abnormal_time": "1", ***** "appversion": "9.4.3", "brand": "Android", ***** } |
websdk_umid | ボット管理における Web クライアントの一意のデバイス ID。 | 6543211729a19aa0123456 |
appsdk_umid | ボット管理におけるアプリクライアントの一意のデバイス ID。 | 3c76912d48ec5eb1ea6cb775ce1ba609 |
client_id | ボット管理によって検出されたクライアントタイプ。 | Python-urllib |
ja3_fingerprint | ボット管理用の JA3 トラフィックフィンガープリント。 | 5c9e5897bbebcef37337bffb97587518 |
ja4_fingerprint | ボット管理用の JA4 トラフィックフィンガープリント。 | b251a742b13fde5fba044eddfd05af34 |
http2_fingerprint | ボット管理用の HTTP/2 トラフィックフィンガープリント。 | 52d84b11737d980aef856699f885ca86 |
non_terminating_rules | リクエストは、モニター または back-to-origin マーカー 操作をトリガーするか、JS 検証、スライダー、厳密なスライダー、または Dynamic Token のチャレンジに合格します。操作フィールドは、「js_pass」、「captcha_pass」、「captcha_strict_pass」、「sigchl_pass」、「monitor」、または「upstream_tag」です。リクエストが複数のルールにヒットした場合、すべてのルールが記録されます。 | [{"id":"12345678","action":"monitor","defense_scene":"waf_base"},{"id":"123123123","type":"suspicious_idc","action":"monitor","defense_scene":"bot_manager"}, {"id":"12341234","bypass_punish":"1","defense_scene":"custom_acl"}] 説明 この例では、 |
terminating_rules | リクエストは、ブロック 操作をトリガーするか、JS 検証、スライダー、厳密なスライダー、または Dynamic Token のチャレンジに失敗します。 操作フィールドは "block"、"js"、"captcha"、"captcha_strict"、または "sigchl" です。 | [{"id":"123456","action":"block","defense_scene":"custom_acl"}] |
WAF 保護アクション (*_action) の説明
*_action は、保護ルールによって実行されるアクションを表します。たとえば、final_action は WAF が実行する最終的なアクションを示し、waf_action は Web コア保護ルールのアクションを示します。利用可能なアクションは保護ルールによって異なります。詳細については、対応するパラメーターの説明をご参照ください。
次の表に、WAF がサポートするすべての保護アクションを示します。
保護操作 | 意味 |
block | クライアントリクエストをブロックし、405 エラーページをクライアントに返します。 |
captcha_strict | 厳格なスライダー認証。WAF はスライダー認証ページをクライアントに返します。クライアントが認証に合格すると、WAF はリクエストを許可します。それ以外の場合、WAF はリクエストをブロックします。厳格なスライダー認証モードでは、クライアントからのすべてのリクエストを検証する必要があります。 |
captcha | スライダー認証。WAF はスライダー認証ページをクライアントに返します。クライアントが認証に合格すると、WAF は一定期間 (デフォルトでは 30 分)、それ以上の検証なしにクライアントからのすべてのリクエストを許可します。それ以外の場合、WAF はリクエストをブロックします。 |
js | JavaScript チャレンジ。WAF は、標準的なブラウザが自動的に実行できる JavaScript コードを返します。クライアントが JavaScript コードを実行すると、WAF は一定期間 (デフォルトでは 30 分)、それ以上の検証なしにクライアントからのすべてのリクエストを許可します。それ以外の場合、WAF はリクエストをブロックします。 |
js_pass | クライアントが JavaScript チャレンジに合格し、WAF がリクエストを許可しました。 |
sigchl | 動的トークンチャレンジ。このアクションは Web リクエストに署名します。クライアントがリクエストを送信すると、WAF が提供する Web SDK がリクエストに署名し、その署名をリクエストに含めます。署名が有効な場合、リクエストはオリジンサーバーに送信されます。それ以外の場合、WAF は動的トークンスクリプトを返し、クライアントにリクエストの再署名を要求します。 |