配置CC攻击防护规则防御CC攻击
CC攻击防护规则支持通过限制单个IP/Cookie/Referer访问者对防护网站上源端的访问频率,精准识别CC攻击以及有效缓解CC攻击;当您配置完CC攻击防护规则并开启CC攻击防护后,WAF才能根据您配置的CC攻击防护规则进行CC攻击防护。
CC攻击防护规则可以添加引用表,引用表防护规则对所有防护域名都生效,即所有防护域名都可以使用CC攻击防护规则的引用表。
前提条件
已添加防护网站。
约束条件
- 添加或修改防护规则后,规则生效需要等待几分钟。规则生效后,您可以在“防护事件”页面查看防护效果。
- 当“逻辑”关系选择“包含任意一个”、“不包含所有”、“等于任意一个”、“不等于所有”、“前缀为任意一个”、“前缀不为所有”、“后缀为任意一个”或者“后缀不为所有”时,需要选择引用表,创建引用表的详细操作请参见创建引用表对防护指标进行批量配置。
操作步骤
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域或项目。
- 单击页面左上方的,选择 。
- 在左侧导航树中,选择“防护策略”,进入“防护策略”页面。
- 单击目标策略名称,进入目标策略的防护配置页面。
- 在“CC攻击防护”配置框中,用户可根据自己的需要更改“状态”,单击“自定义CC攻击防护规则”,进入CC防护规则配置页面。
图1 CC防护规则配置框
- 在“CC攻击防护”规则配置列表左上方,单击“添加规则”。
- 在弹出的对话框中,根据表1配置CC防护规则。
表1 CC防护规则参数说明 参数
参数说明
取值样例
规则描述
可选参数,设置该规则的备注信息。
--
限速模式
- “IP限速”:根据IP区分单个Web访问者。
- “用户限速”:根据Cookie键值或者Header区分单个Web访问者。
- “其他”:根据Referer(自定义请求访问的来源)字段区分单个Web访问者。
说明:选择“其他”时,“Referer”对应的“内容”填写为包含域名的完整URL链接,仅支持前缀匹配和精准匹配的逻辑,“内容”里不能含有连续的多条斜线的配置,如“///admin”,WAF引擎会将“///”转为“/”。
例如:若用户不希望访问者从“www.test.com”访问网站,则“Referer”对应的“内容”设置为“http://www.test.com”。
--
用户标识
“限速模式”选择“用户限速”时,需要配置此参数:
name
限速条件
单击“添加”增加新的条件,至少配置一项条件,最多可添加30项条件,多个条件同时满足时,本条规则才生效。
- 字段
- 子字段:当“字段”选择IPv4、Cookie、Header、Params时,请根据实际需求配置子字段。
须知:
子字段的长度不能超过2048字节,且只能由数字、字母、下划线和中划线组成。
- 逻辑:在“逻辑”下拉列表中选择需要的逻辑关系。
说明:
当“逻辑”关系选择“包含任意一个”、“不包含所有”、“等于任意一个”、“不等于所有”、“前缀为任意一个”、“前缀不为所有”、“后缀为任意一个”或者“后缀不为所有”时,需要选择引用表,创建引用表的详细操作请参见创建引用表对防护指标进行批量配置。
- 内容:输入或者选择条件匹配的内容。
“路径”包含“/admin/”
限速频率
单个Web访问者在限速周期内可以正常访问的次数,如果超过该访问次数,Web应用防火墙服务将根据配置的“防护动作”来处理。
10次/60秒
防护动作
当访问的请求频率超过“限速频率”时,可设置以下防护动作:
- 人机验证:表示超过“限速频率”后弹出验证码,进行人机验证,完成验证后,请求将不受访问限制。人机验证目前支持英文。
- 阻断:表示超过“限速频率”将直接阻断。
- 动态阻断:上一个限速周期内,请求频率超过“限速频率”将被阻断,那么在下一个限速周期内,请求频率超过“放行频率”将被阻断。
- 仅记录:表示超过“限速频率”将只记录不阻断。可下载防护事件数据查看域名的防护日志。
阻断
放行频率
当“防护动作”选择“动态阻断”时,可配置放行频率。
如果在一个限速周期内,访问超过“限速频率”触发了拦截,那么,在下一个限速周期内,拦截阈值动态调整为“放行频率”。
“放行频率”小于等于“限速频率”。
说明:当“放行频率”设置为0时,表示如果上一个限速周期发生过拦截后,下一个限速周期所有的请求都不放行。
8次/60秒
阻断时长
当“防护动作”选择“阻断”时,可设置阻断后恢复正常访问页面的时间。
600秒
阻断页面
当“防护动作”选择“阻断”时,需要设置该参数,即当访问超过限速频率时,返回的错误页面。
- 当选择“默认设置”时,返回的错误页面为系统默认的阻断页面。
- 当选择“自定义”,返回错误信息由用户自定义。
自定义
页面类型
当“阻断页面”选择“自定义”时,可选择阻断页面的类型“application/json”、“text/html”或者“text/xml”。
text/html
页面内容
当“阻断页面”选择“自定义”时,可设置自定义返回的内容。
不同页面类型对应的页面内容样式:
- text/html:<html><body>Forbidden</body></html>
- application/json:{"msg": "Forbidden"}
- text/xml:<?xml version="1.0" encoding="utf-8"?><error> <msg>Forbidden</msg></error>
- 单击“确认”,添加的CC攻击防护规则展示在CC规则列表中。
- 规则添加成功后,默认的“规则状态”为“已开启”,若您暂时不想使该规则生效,可在目标规则所在行的“操作”列,单击“关闭”。
- 若需要修改添加的CC攻击防护规则时,可单击待修改的CC攻击防护规则所在行的“修改”,修改CC攻击防护规则。
- 若需要删除用户自行添加的CC攻击防护规则时,可单击待删除的CC攻击防护规则所在行的“删除”,删除CC攻击防护规则。
防护效果
假如已添加域名“www.example.com”,且配置了如图2所示“阻断”防护动作的CC防护规则。可参照以下步骤验证防护效果:
- 清理浏览器缓存,在浏览器中输入防护域名,测试网站域名是否能正常访问。
- 清理浏览器缓存,在浏览器中访问满足Cookie条件的“http://www.example.com/admin”页面,在60秒内刷新页面10次,正常情况下,在第11次访问该页面时,返回自定义的拦截页面;60秒后刷新目标页面,页面访问正常。
如果您设置了“人机验证”防护动作,当用户访问超过限制后需要输入验证码才能继续访问。
- 返回Web应用防火墙控制界面,在左侧导航树中,单击“防护事件”,进入“防护事件”页面,查看防护域名拦截日志,您也可以下载防护事件数据。
配置示例-人机验证
假如防护域名“www.example.com”已接入WAF,您可以参照以下操作步骤验证人机验证防护效果。
- 添加防护动作为“人机验证”CC防护规则。
图3 添加“人机验证”防护规则
- 开启CC攻击防护。
- 清理浏览器缓存,在浏览器中访问“http://www.example.com/admin/”页面。
当您在60秒内访问页面10次,在第11次访问该页面时,页面弹出验证码。此时,您需要输入验证码才能继续访问。
- 返回Web应用防火墙管理控制台,在左侧导航树中,单击“防护事件”,进入“防护事件”页面,您可以查看该防护事件。