全部產品
Search
文件中心

Web Application Firewall:匹配條件欄位說明

更新時間:Jul 01, 2024

配置網站白名單或自訂防護規則時,可通過設定匹配條件,並針對符合匹配條件規則的訪問請求定義相應的匹配動作,實現防護效果。本文介紹匹配條件中支援使用的欄位及其釋義。

什麼是匹配條件、匹配動作

匹配條件

  • 匹配條件包含匹配欄位、邏輯符和匹配內容。僅部分匹配欄位支援Regex描述,更多資訊,請參見匹配條件支援的匹配欄位

  • 每一條防護規則中最多允許設定5個匹配條件組合,且各個條件間是“與”的邏輯關係,即訪問請求必須同時滿足所有匹配條件才算命中該規則,才能執行相應的匹配動作。

匹配動作

防護白名單中的匹配動作表示為不檢測模組,自訂防護規則的匹配動作表示為處置動作,更多資訊,請參見以下文檔:

匹配條件支援的匹配欄位

匹配欄位

支援的版本

適用的邏輯符

欄位描述

URL

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配、正則不匹配

    重要

    進階版不支援正則匹配邏輯。

訪問請求的URL地址。

IP

進階版、企業版、旗艦版、獨享版

屬於、不屬於

訪問請求的來源IP,支援填寫單個IP或者CIDR格式的IP網段(例如47.100.XX.XX/24)。

說明

單個防護規則最多可填寫50個IP或IP網段。例如,某條防護規則中包含兩條匹配欄位為IP的匹配條件,則兩條匹配條件中的IP或IP網段總數不能超過50個。多個IP或IP網段之間使用英文逗號(,)分隔。

Referer

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 內容為空白

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配、正則不匹配

    重要

    進階版不支援正則匹配邏輯。

訪問請求的來源網址,即該訪問請求是從哪個頁面跳轉產生的。

User-Agent

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 內容為空白

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配、正則不匹配

發起訪問請求的用戶端的瀏覽器標識、渲染引擎標識和版本資訊等瀏覽器相關資訊。

Params

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配、正則不匹配

訪問請求的URL地址中的參數部分,通常指URL中”?”後面的部分。例如,www.example.com/index.html?action=login中的action=login就是參數部分。

Query-Arg

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 內容為空白

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配

訪問請求的URL地址中的參數部分,通常指URL中”?”後面的部分。例如www.example.com/request_path?arg1=a&arg2=b中,query-arg欄位為arg1或arg2。

說明

訪問請求裡query-arg參數包含多個欄位時,自訂防護策略中如果設定的是query-arg包含arg,WAF會命中取值為arg1和arg2的兩條訪問請求。如果您需要精確匹配訪問請求,建議原則設定為query-arg包含arg1query-arg包含arg2

URLPath

進階版、企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 長度等於、長度大於、長度小於

  • 首碼匹配、尾碼匹配

  • 正則匹配、正則不匹配

訪問請求的URL路徑。

Cookie

企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 長度等於、長度大於、長度小於

  • 正則匹配、正則不匹配

訪問請求中的Cookie資訊。

Content-Type

企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 長度等於、長度大於、長度小於

  • 正則匹配、正則不匹配

訪問請求指定的響應HTTP內容類型,即MIME類型資訊。

Content-Length

企業版、旗艦版、獨享版

值小於、等於、值大於

訪問請求的響應內容所包含的位元組數。

X-Forwarded-For

企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含

  • 不存在

  • 長度等於、長度大於、長度小於

訪問請求的用戶端真實IP。X-Forwarded-For(XFF)用來識別通過HTTP代理或負載平衡方式轉寄的訪問請求的用戶端最原始的IP地址的HTTP要求標頭欄位,只有通過HTTP代理或者負載平衡伺服器轉寄的訪問請求才會包含該項。

Post-Body

企業版、旗艦版、獨享版

  • 等於、不等於

  • 包含、不包含

  • 不存在

  • 首碼匹配、尾碼匹配

  • 正則匹配

訪問請求的請求內容資訊。

Server-Port

企業版、旗艦版、獨享版

等於、不等於、等於多值之一、不等於任一值

來源站點伺服器的連接埠號碼。例如www.example.com:9999,中,server_port為9999。

Http-Method

企業版、旗艦版、獨享版

等於、不等於、等於多值之一、不等於任一值

訪問請求的方法,例如GET、POST、DELETE、PUT、OPTIONS等。

Header

企業版、旗艦版、獨享版

  • 等於、不等於、等於多值之一、不等於任一值

  • 包含、不包含、包含多值之一、不包含任一值

  • 存在、不存在

  • 長度等於、長度大於、長度小於

  • 正則匹配、正則不匹配

訪問請求的頭部資訊,用於自訂HTTP頭部欄位。