更新时间:2025-05-15 GMT+08:00
配置攻击惩罚的流量标识
WAF根据配置的流量标识识别客户端IP、Session或User标记,以分别实现IP、Cookie或Params恶意请求的攻击惩罚功能。
前提条件
约束条件
- 如果配置了IP标记,为了确保IP标记生效,请您确认防护网站在接入WAF前已使用了7层代理,且防护网站的“是否已使用代理”为“是”。
如果未配置IP标记,WAF默认通过客户端IP进行识别。
- 使用Cookie或Params恶意请求的攻击惩罚功能前,您需要分别配置对应域名的Session标记或User标记。
配置攻击惩罚的流量标识
- 登录管理控制台。
- 在管理控制台左上角,单击
,选择区域或项目。
- 在页面左上方,单击
,选择 。
- 在左侧导航树中,选择“网站设置”,进入“网站设置”页面。
- 在目标网站所在行的“域名”列中,单击目标网站,进入网站基本信息页面。
- 在“流量标识”栏中,单击“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
- 单击“确认”,完成标记信息配置。
操作结果验证
假如已添加域名“www.example.com”,可参照以下步骤验证操作结果:
- 设置“IP标记”为“X-Forwarded-For”。
- 添加配置精准访问防护规则定制化防护策略:“条件字段”为“IPv4”,“子字段”为“X-Forwarded-For”,“逻辑”为“等于”,“内容”为“192.168.2.0”;“防护动作”为“拦截”。
- 执行以下命令:
curl -kv -H "host:www.example.com" "http://{SDK服务器ip}” -H ”x-forwarded-for:192.168.2.0
- 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截日志中,源IP是否为“192.168.2.0”。
- 设置“Session标记”为“sessiontest”。
- 添加配置精准访问防护规则定制化防护策略:“条件字段”为“Cookie”,“逻辑”为“包含”,“内容”为“sessiontest”;“防护动作”为“拦截”。
- 执行以下命令:
curl -kv -H "host:www.example.com" "http://{SDK服务器ip}” --cookie "sessiontest:123"
- 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截详情。
- 设置“User标记”为“Params”。
- 添加配置精准访问防护规则定制化防护策略:“条件字段”为“Params”,“逻辑”为“包含”,“内容”为“usertest”;“防护动作”为“拦截”。
- 执行以下命令:
curl -kv -H "host:www.example.com" "http://{SDK服务器ip}/usertest:123”
- 请求被拦截。返回Web应用防火墙控制界面,在左侧导航栏,单击“防护事件”,在“防护事件”页面,查看防护域名拦截详情。