更新时间:2025-05-15 GMT+08:00

配置攻击惩罚的流量标识

WAF根据配置的流量标识识别客户端IP、Session或User标记,以分别实现IP、Cookie或Params恶意请求的攻击惩罚功能。

约束条件

  • 如果配置了IP标记,为了确保IP标记生效,请您确认防护网站在接入WAF前已使用了7层代理,且防护网站的“是否已使用代理”“是”

    如果未配置IP标记,WAF默认通过客户端IP进行识别。

  • 使用Cookie或Params恶意请求的攻击惩罚功能前,您需要分别配置对应域名的Session标记或User标记。

配置攻击惩罚的流量标识

  1. 登录管理控制台。
  2. 在管理控制台左上角,单击,选择区域或项目。
  3. 在页面左上方,单击,选择安全 > Web应用防火墙 WAF
  4. 在左侧导航树中,选择“网站设置”,进入“网站设置”页面。
  5. 在目标网站所在行的“域名”列中,单击目标网站,进入网站基本信息页面。
  6. “流量标识”栏中,单击“IP标记”“Session标记”“User标记”后的,分别设置流量标记,相关参数说明如表1所示。

    图1 流量标识
    表1 流量标识参数说明

    标识

    说明

    配置样例

    IP标记

    客户端最原始的IP地址的HTTP请求头字段。

    如果配置该标识,请确保网站在接入WAF前已使用了7层代理,且防护网站的“是否已使用代理”“是”,IP标记功能才能生效。

    该字段用于保存客户端的真实IP地址,可自定义字段名且支持配置多个字段(多个字段名以英文逗号隔开),配置后,WAF优先从配置的字段中获取客户端真实IP(配置多个字段时,WAF从左到右依次读取)。
    须知:
    • 如果想以TCP连接IP作为客户端IP,“IP标记”应配置为“$remote_addr”
    • 如果从自定义字段中未获取到客户端真实IP,WAF将依次从cdn-src-ip,x-real-ip,x-forwarded-for,$remote_addr字段获取客户端IP。

    X-Forwarded-For

    Session标记

    用于Cookie恶意请求的攻击惩罚功能。在选择Cookie拦截的攻击惩罚功能前,必须配置该标识。

    sessiontest

    User标记

    用于Params恶意请求的攻击惩罚功能。在选择Params拦截的攻击惩罚功能前,必须配置该标识。

    Params

  7. 单击“确认”,完成标记信息配置。

操作结果验证

假如已添加域名“www.example.com”,可参照以下步骤验证操作结果:

  1. 设置“IP标记”“X-Forwarded-For”
  2. 添加配置精准访问防护规则定制化防护策略“条件字段”“IPv4”“子字段”“X-Forwarded-For”“逻辑”“等于”“内容”“192.168.2.0”“防护动作”“拦截”
  3. 执行以下命令:
    curl -kv -H "host:www.example.com" "http://{SDK服务器ip}” -H ”x-forwarded-for:192.168.2.0
  4. 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截日志中,源IP是否为“192.168.2.0”
  1. 设置“Session标记”“sessiontest”
  2. 添加配置精准访问防护规则定制化防护策略“条件字段”“Cookie”“逻辑”“包含”“内容”“sessiontest”“防护动作”“拦截”
  3. 执行以下命令:
    curl -kv -H "host:www.example.com" "http://{SDK服务器ip}” --cookie "sessiontest:123"
  4. 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截详情。
  1. 设置“User标记”“Params”
  2. 添加配置精准访问防护规则定制化防护策略“条件字段”“Params”“逻辑”“包含”“内容”“usertest”“防护动作”“拦截”
  3. 执行以下命令:
    curl -kv -H "host:www.example.com" "http://{SDK服务器ip}/usertest:123”
  4. 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截详情。