Web 應用防火牆 (WAF)

Web 應用程式防火牆(WAF)旨在保護 Web 應用程式免遭多種網路攻擊,如跨站指令碼攻擊(XSS)、SQL 注入等威脅。

引數說明

引數名資料型別是否必選描述
rule_setsarray需要啟用的規則集合名稱列表
actionstring觸發 WAF 防護時所採取的行為,可選項包括 log(日誌)、403 Forbidden(禁止訪問)、edge-captcha(OpenResty Edge 驗證碼)、redirect(重定向)
sensitivitystringWAF 防護敏感級別,選項有 high(高)、medium(中)、low(低)、none(無)
scorenumbersensitivity 設定為 none 時,可自定義敏感度分數
clearancenumber驗證碼觸發後的有效期,預設值為 60 秒
redirect_urlstring當行為設定為 redirect 時,所指定的重定向 URL
cross_requestsbool設定為 true 時開啟跨請求模式,預設值為 true,推薦設定為 false
rule_sets_thresholdarray為各規則集單獨設定敏感度分數,需與 rule_sets 中的規則集一一對應

您可以選擇使用內建規則集或自定義 WAF 規則集。以下為可用的內建 WAF 規則集列表:

  • scanner_detection
  • protocol_enforcement
  • protocol_attack
  • application_attack_lfi
  • application_attack_rfi
  • application_attack_rce
  • application_attack_php
  • application_attack_nodejs
  • application_attack_xss
  • application_attack_sqli
  • application_attack_session_fixation
  • application_attack_java

配置示例

- enable_rule: true
  conditions:
  - op: eq
    var: uri
    val: /waf

  waf:
    rule_sets:
      - scanner_detection
      - protocol_enforcement
      - application_attack_xss
      - application_attack_sqli
    sensitivity: medium
    action: "403 Forbidden"
    cross_requests: false

在上述示例中,當請求的 URI/waf 時,啟用 WAF,啟用的的規則集包括 scanner_detection、protocol_enforcement、application_attack_xss 及 application_attack_sqli,防護敏感級別設定為中等。一旦觸發 WAF 防護機制,則執行動作並返回 HTTP 狀態碼 403,表示請求被禁止。