配置网站反爬虫防护规则防御爬虫攻击
您可以通过配置网站反爬虫防护规则,防护搜索引擎、扫描器、脚本工具、其它爬虫等爬虫,以及自定义JS脚本反爬虫防护规则。
前提条件
已添加防护网站。
约束条件
配置网站反爬虫防护规则
- 登录管理控制台,在页面左上方,单击
图标,选择 。
- 在控制台左上角,单击
图标,选择区域或项目。
- 在左侧导航栏,单击“防护策略”。
- 单击目标策略名称,进入目标策略的防护规则配置页面。
在配置防护规则前,请确认目标防护策略已绑定防护域名,即绑定策略生效目标。一条防护策略可以适用于多个防护域名,但一个防护域名只能绑定一个防护策略。
- 单击“网站反爬虫”配置框,确认已开启网站反爬虫防护规则。
:开启状态。
- 在“特征反爬虫”页签,根据您的业务场景,配置命中特征反爬虫规则的防护动作、要执行检测的类型,检测项说明如表1所示。
- 防护动作:设置请求命中规则时要执行的处置动作:
- 拦截:发现攻击行为后立即阻断并记录。
开启拦截后,可能会有以下影响 :
- 拦截搜索引擎请求,可能影响网站的搜索引擎优化。
- 拦截脚本工具,可能会影响部分APP访问(部分APP的User-Agent未做修改,会匹配脚本工具类爬虫规则)。
- 仅记录(默认):发现攻击行为后只记录不阻断攻击。
- 拦截:发现攻击行为后立即阻断并记录。
- 检测类型:WAF默认开启“扫描器”防护检测,您可以根据业务需要,配置要防护的检测类型。
表1 特征反爬虫检测项说明 检测项
说明
功能说明
搜索引擎
搜索引擎执行页面内容爬取任务,如Googlebot、Baiduspider。
- 开启后,WAF将检测并阻断搜索引擎爬虫。
- 关闭后,WAF针对谷歌和百度爬虫不会拦截。
扫描器
执行漏洞扫描、病毒扫描等Web扫描任务,如OpenVAS、Nmap。
开启后,WAF将检测并阻断扫描器爬虫。
脚本工具
用于执行自动化任务、程序脚本等,如httpclient、okhttp、python程序等。
开启后,WAF将检测并阻断执行自动化任务、程序脚本等。
如果您的应用程序中使用了httpclient、okhttp、python程序等脚本工具,建议您关闭“脚本工具”,否则,WAF会将使用了httpclient、okhttp、python程序等脚本工具当成恶意爬虫,拦截该应用程序。
其他爬虫
各类用途的爬虫程序,如站点监控、访问代理、网页分析等。
“访问代理”是指当网站接入WAF后,为避免爬虫被WAF拦截,爬虫者使用大量IP代理实现爬虫的一种技术手段。
开启后,WAF将检测并阻断各类用途的爬虫程序。
- 防护动作:设置请求命中规则时要执行的处置动作:
- 选择“JS脚本反爬虫”页签,用户可根据业务需求更改JS脚本反爬虫的“状态”。
默认关闭JS脚本反爬虫,单击
,在弹出的“警告”提示框中,单击“确定”,开启JS脚本反爬虫
。
- 根据业务配置JS脚本反爬虫规则,相关参数说明如表2所示。
JS脚本反爬虫规则提供了“防护所有请求”和“防护指定请求”两种防护动作。
表2 JS脚本反爬虫防护规则参数说明 参数
参数说明
示例
规则名称
自定义规则名称。
wafjs
路径
设置JS脚本反爬虫的URL链接中的路径(不包含域名)。
URL用来定义网页的地址。基本的URL格式如下:
协议名://域名或IP地址[:端口号]/[路径名/…/文件名]。
例如,URL为“http://www.example.com/admin”,则“路径”设置为“/admin”。
说明:- 该路径不支持正则。
- 路径里不能含有连续的多条斜线的配置,如“///admin”,WAF引擎会将“///”转为“/”。
/admin
逻辑
在“逻辑”下拉列表中选择需要的逻辑关系。
包含
规则描述
规则备注信息。
-
生效时间
立即生效
立即生效