Bot管理的高级自定义规则模块提供比Web核心防护自定义规则更丰富的匹配字段(如Client ID、JA3/JA4指纹、Web/App SDK采集信息)和统计维度(如UMID、Session),支持基于条件的去重统计能力及回源标记处置动作,满足针对机器流量的自定义精细化管控与复杂场景防御需求。
操作步骤
登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地),在左侧导航栏,选择。
步骤一:配置防护模板的名称与生效对象
单击新建模板,在新建模板-高级自定义规则面板中完成以下配置。
模板名称:为该防护模板设置一个便于识别的名称。
规则配置:单击新建规则,为当前模板步骤二:在防护模板中添加防护规则。
生效对象:选择要应用于该模板的防护对象和防护对象组,模板创建时与创建完成后,均支持手动调整防护对象或防护对象组生效状态。
步骤二:在防护模板中添加防护规则
在规则配置区域,单击新建规则,完成以下配置。
规则名称:为该防护规则设置一个便于识别的名称。
匹配条件:设置该规则要匹配的请求特征。通过单击新增条件添加一个条件。每个条件由匹配字段、逻辑符和匹配内容组成。配置示例如下:
说明若规则包含多个条件,则请求必须满足所有条件(逻辑与关系),才能命中该规则。关于匹配字段和逻辑符的详细说明,请参见匹配条件说明。
匹配字段
逻辑符
匹配内容
说明
URI Path
包含
/login.php当请求的路径包含
/login.php时,则请求命中该规则。IP
属于
192.1.XX.XX当客户端IP为
192.1.XX.XX时,则请求命中该规则。防护类型:支持访问控制与频率控制。
访问控制:适用于对特定类型的请求执行精确管控的场景。
频率控制:适用于基于访问频率的场景(如防刷、防暴力破解)。
访问控制
配置访问控制规则,对符合特定条件的单次请求执行指定操作。
频率控制
配置频率控制规则,限制客户端的过度访问。
频率检测条件:当单个统计对象在指定的统计时长(秒)内命中规则的次数超过设定的阈值(次)时,触发黑名单处置。
配置项
说明
统计对象
选择请求频率的统计对象。可选项:
IP:统计同一个IP发起请求的频率。
自定义header:基于自定义请求头(如
Referer)的值进行分组,统计在指定时间段内,每组相同请求头值所对应的请求频率。自定义参数:统计URL中包含指定参数的请求频率。例如,若参数为
user_id,WAF将统计具有相同user_id值的请求频率。自定义cookie:统计在指定时间段内,HTTP请求中包含特定Cookie的频率。例如,当自定义Cookie名称为 User 时,将统计在该时间段内每个 User 值的出现次数。
Session:WAF通过在响应中设置名为
acw_tc的Cookie来建立会话标识,并基于该Cookie的值统计客户端请求频率。账号:统计同一个账号发起请求的频率。需要在防护对象页面设置账号提取配置后,才能配置此项,详细信息,请参见配置防护对象和防护对象组。
Body参数:统计包含指定Body中参数的请求频率。
APP端UMID:统计同一个App端发起请求的频率。
网页端UMID:统计同一个网页端发起请求的频率。
统计时长(秒)
频率统计的时间窗口周期。单位:秒。
阈值(次)
设置在统计时长(秒)内,允许统计对象命中匹配条件的最大次数。
响应码检测条件:启用后,仅当响应结果符合以下特征时,才计入频率统计。此条件需与频率检测条件同时满足。
配置项
说明
响应码
设置需要统计的响应码。
数量
设置在统计时长内,允许指定的响应码在请求响应中出现的最大次数。
比例(%)
设置在统计时长内,允许指定的响应码在请求响应中的最大占比。
去重统计:启用后,系统将对请求内容进行去重处理,仅统计不重复的请求特征。若去重后的统计结果命中规则,则触发黑名单处置。通过单击新增条件添加一个条件。每个条件由匹配字段、逻辑符和数量组成。配置示例如下:
说明若规则包含多个条件,则请求必须满足所有条件(逻辑与关系),才能命中该规则。
匹配字段为
URI、逻辑符为等于、数量为5,表示系统对请求 URI 进行去重处理,当不重复的 URI 访问频次等于 5 时,判定为命中规则。黑名单处置条件:将命中上述检测条件的统计对象加入黑名单,在黑名单超时时间内,对来自该对象黑名单生效范围内的请求执行处置动作中定义的处置。
配置项
说明
黑名单生效范围
设置黑名单处置的生效范围。可选值:
仅作用于当前规则的匹配条件:表示只处置满足当前规则匹配条件的请求。
作用于整个防护对象:表示对该统计对象(如IP)发起的,访问当前防护对象的所有请求执行处置动作。
黑名单超时时间
设置黑名单处置的生效时长。单位:秒。取值范围:60~86400。
处置动作:选择当请求命中该规则时,要执行的防护动作。
配置项
说明
JS验证
WAF向客户端返回一段JavaScript验证代码,标准浏览器将自动执行该代码。若客户端正常执行完成,则WAF在一段时间(默认30分钟)内放行该客户端的所有请求,否则拦截请求。
拦截
拦截命中规则的请求,并向发起请求的客户端返回拦截响应页面。
说明WAF默认使用统一的拦截响应页面,也可以通过自定义响应功能,自定义拦截响应页面。
观察
不拦截命中规则的请求,仅通过日志记录请求命中的情况。在试运行规则时,可以先通过观察模式分析WAF日志,以确认未产生误拦截,再将其调整为其他规则动作。
滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则WAF在一段时间(默认30分钟)内放行该客户端的所有请求,否则拦截请求。
严格滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则放行该请求;否则拦截请求。在此模式下,客户端每次命中该规则的请求均需进行滑动验证。
回源标记
表示客户可以自定义Header名称及内容(规则类型、规则ID、网页端UMID),WAF不会直接处理,而是会通过新增Header的方式将命中信息返回给源站,客户可以与后端风控系统结合做业务侧处理。
说明JS验证或滑块验证仅适用于同步请求。对于XMLHttpRequest、Fetch方法等异步请求,必须注入Web SDK,否则无法正常运行。
启用JS验证或滑块后,客户端通过验证时,WAF将在响应头中通过Set-Cookie 设置名为
acw_sc__v2(JS验证)或acw_sc__v3(滑块验证)的 Cookie。客户端在后续请求中会在 Cookie 头中携带该标识。
规则分类:定义 Bot 流量类型,可选类型包括疑似BOT与恶意BOT。命中该规则的流量将被归入对应类别,并在流量分析页面的走势图中进行统计与展示。
高级设置:配置规则的灰度发布比例及生效时间策略。
配置项
说明
规则灰度
配置规则针对不同维度对象的生效比例。
开启规则灰度后,还需要设置维度和灰度比例。维度包括:IP、自定义Header、自定义参数、自定义Cookie、Session、APP端UMID、网页端UMID。
说明规则灰度根据配置的维度生效,而非对请求按比例随机生效规则。例如,当维度为IP且灰度比例为10%时,WAF将选择约10%的IP地址;被选中的IP地址,其所有请求均应用该规则,而非对所有请求按10%的比例随机应用。
生效模式
永久生效(默认):防护模板开启时,规则永久生效。
按时间段生效:防护规则仅在指定的一段时间内生效。
按周期生效:防护规则仅在指定的时间周期内生效。
日常运维
管理防护模板
新建的防护模板默认开启,可以在防护模板列表执行如下操作:
查看模板关联的防护对象/组的数量。
通过模板开关,开启或关闭模板。
为该模板新建规则。
编辑、删除或复制防护模板。
单击防护模板名称左侧的
图标,查看该防护模板包含的规则信息。
管理防护规则
新建的规则默认开启。可以在规则列表执行如下操作:
查看规则ID、规则条件等信息。
通过状态开关,开启或关闭规则。
编辑或删除规则。
配额与限制
单个防护规则最多可添加10个匹配条件。
去重统计规则最多可添加5个条件。
常见问题
BOT管理的高级自定义规则与Web 核心防护的自定义规则,二者有什么区别?
对比项 | ||
版本要求与费用 |
|
|
支持的功能 | 提供满足日常防护需求的规则。 | 除具备自定义规则的功能外,还支持以下特性:
|