当基于iOS、Android或Harmony原生开发的App(不含App内嵌H5页面)面临恶意爬虫、自动化脚本攻击、接口滥用等威胁时,可以创建Bot-App防护模板,自定义防护规则,防御App爬虫,确保业务安全。
操作步骤
登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。在左侧导航栏,选择,在App防护页签,单击新建模板。
步骤一:防护场景定义
填写一个便于识别的模板名称与模板介绍。
选择防护目标特征,支持全局生效与定制匹配条件两种类型。
全局生效:适用于域名下的所有流量,包括网页、App及小程序等。
定制匹配条件:支持根据请求特征区分流量类型,适用于网页与App共用同一接口,但仅需对网页或H5流量进行防护,或针对秒杀、登录等特定业务接口实施专项防护策略的场景。
全局生效
配置防护目标为全局生效,无需输入流量特征。
定制匹配条件
配置防护目标为定制匹配条件,依据输入特征进行匹配。通过单击新增条件添加一个条件。每个条件由匹配字段、逻辑符和匹配内容组成。配置示例如下:
说明若规则包含多个条件,则请求必须满足所有条件(逻辑与关系),才能命中该规则。关于匹配字段和逻辑符的详细说明,请参见匹配条件说明。
匹配字段
逻辑符
匹配内容
说明
URI Path
包含
/login.php当请求的路径包含
/login.php时,则请求命中该规则。IP
属于
192.1.XX.XX当客户端IP为
192.1.XX.XX时,则请求命中该规则。
勾选是否排除静态文件,静态文件请求通常不涉及业务逻辑,且其内容本身不易被用于注入攻击,排除静态文件可减少检测负载,使WAF专注于保护动态接口。建议选择默认的静态文件类型,也可自定义添加类型。
步骤二:编辑模板规则
在二次打包区域,可单击新建配置规则。旨在防止攻击者对您的 App 进行反编译,植入恶意代码、广告,并重新签名打包为盗版 App 向您的服务器发起请求。
在指定合法包名与包签名区域进行填写,作为App 的唯一标识。可单击新增合法版本配置多个版本,最多添加5个条件;条件之间为“或”关系。
规则分类:支持设置为恶意BOT与疑似BOT。
处置动作:
配置项
说明
观察
不拦截命中规则的请求,仅通过日志记录请求命中的情况。在试运行规则时,可以先通过观察模式分析WAF日志,以确认未产生误拦截,再将其调整为其他规则动作。
滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则WAF在一段时间(默认30分钟)内放行该客户端的所有请求,否则拦截请求。
严格滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则放行该请求;否则拦截请求。在此模式下,客户端每次命中该规则的请求均需进行滑动验证。
拦截
拦截命中规则的请求,并向发起请求的客户端返回拦截响应页面。
说明WAF默认使用统一的拦截响应页面,也可以通过自定义响应功能,自定义拦截响应页面。
回源标记
表示客户可以自定义Header名称及内容(规则类型、规则ID、App 端UMID),WAF不会直接处理,而是会通过新增Header的方式将命中信息返回给源站,客户可以与后端风控系统结合做业务侧处理。
在规则灰度区域,配置规则针对不同维度的对象的生效比例。开启规则灰度后,还需要设置维度和灰度比例。维度包括:IP、自定义Header、自定义参数、自定义Cookie、Session、APP端UMID。
说明规则灰度根据配置的维度生效,而非对请求按比例随机生效规则。例如,当维度为IP且灰度比例为10%时,WAF将选择约10%的IP地址;被选中的IP地址,其所有请求均应用该规则,而非对所有请求按10%的比例随机应用。
在生效模式区域,选择规则的生效时间。
永久生效(默认):防护模板开启时,规则永久生效。
按时间段生效:防护规则仅在指定的一段时间内生效。
按周期生效:防护规则仅在指定的时间周期内生效。
在风险识别区域,可以单击新建,创建风险识别规则。基于WAF内建的手机号信誉数据库,实现针对黄牛等异常手机号的访问阻断,适用于手机号登录注册类场景。
重要风险识别属于收费功能。具体计费规则如下:
计费条件:仅在完成规则配置且实际流量命中时产生费用,其他情况不计费。
计费单价:0.05元/次。
结算方式:采用后付费模式,按天生成账单。
账号提取:单击新增账号配置账号类型和账号位置。最多添加五个条件,条件之间为或关系。
配置示例:若登录请求采用 GET 方法,且请求参数格式为
username=158***&password=***,请按以下方式进行配置:账号位置:选择 Query参数。
参数名称:填写 username。
配置完成后,WAF 即可准确提取该请求中的手机号信息,用于后续的安全匹配与检测。
风险标签:单击新增标签进行配置,最多添加五个条件,条件之间为或关系。
疑似小号:疑似第三方平台提供手机号,非个人用户。
诈骗风险:疑似历史上存在欺诈行为。
垃圾注册:疑似使用非法工具进行用户注册,用于后续的营销活动等。
营销作弊:疑似使用非法工具参与营销活动,如批量注册领取优惠券等。
黄牛账号:疑似使用非法工具参与抢票或其他秒杀类活动。
风险等级默认均为高风险,支持配置高风险、中高风险、中风险,可根据业务需求自由选择。
处置动作:
配置项
说明
观察
不拦截命中规则的请求,仅通过日志记录请求命中的情况。在试运行规则时,可以先通过观察模式分析WAF日志,以确认未产生误拦截,再将其调整为其他规则动作。
滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则WAF在一段时间(默认30分钟)内放行该客户端的所有请求,否则拦截请求。
严格滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则放行该请求;否则拦截请求。在此模式下,客户端每次命中该规则的请求均需进行滑动验证。
拦截
拦截命中规则的请求,并向发起请求的客户端返回拦截响应页面。
说明WAF默认使用统一的拦截响应页面,也可以通过自定义响应功能,自定义拦截响应页面。
回源标记
表示客户可以自定义Header名称及内容(规则类型、规则ID、App 端UMID),WAF不会直接处理,而是会通过新增Header的方式将命中信息返回给源站,客户可以与后端风控系统结合做业务侧处理。
在策略配置区域,系统基于阿里云经验沉淀的常见 Bot 特征库,将规则划分为恶意BOT、疑似BOT和友好BOT三类。针对目标规则,您可以执行以下操作:
启用/禁用:单击状态列的
图标,开启或关闭规则。修改规则:单击编辑按钮,对规则进行自定义调整。
修改分类:对于恶意BOT与疑似BOT规则,若实际分类不符合业务需求,可以在Bot类型列中对其分类进行修改。
编辑规则处置动作
配置项
说明
观察
不拦截命中规则的请求,仅通过日志记录请求命中的情况。在试运行规则时,可以先通过观察模式分析WAF日志,以确认未产生误拦截,再将其调整为其他规则动作。
滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则WAF在一段时间(默认30分钟)内放行该客户端的所有请求,否则拦截请求。
严格滑块
WAF向客户端返回滑动验证页面。若客户端成功完成滑动验证,则放行该请求;否则拦截请求。在此模式下,客户端每次命中该规则的请求均需进行滑动验证。
拦截
拦截命中规则的请求,并向发起请求的客户端返回拦截响应页面。
说明WAF默认使用统一的拦截响应页面,也可以通过自定义响应功能,自定义拦截响应页面。
回源标记
表示客户可以自定义Header名称及内容(规则类型、规则ID、App 端UMID),WAF不会直接处理,而是会通过新增Header的方式将命中信息返回给源站,客户可以与后端风控系统结合做业务侧处理。
说明启用JS验证或滑块后,客户端通过验证时,WAF将在响应头中通过Set-Cookie 设置名为
acw_sc__v2(JS验证)或acw_sc__v3(滑块验证)的 Cookie。客户端在后续请求中会在 Cookie 头中携带该标识。
步骤三:选择生效范围
在生效对象区域,选中需要应用的防护对象或防护对象组,单击
图标,将该防护对象或防护对象组移入已选择区域内,单击确定。
步骤四:App SDK集成
Bot 防护能力高度依赖 SDK 采集的数据,若未集成 SDK,将无法获得完整的防护效果。针对 Native App 场景,WAF 提供专属的 App 防护 SDK 以提升安全防护能力。
集成该 SDK 后,系统将自动采集客户端的风险特征并生成安全签名,将其附加至业务请求中。WAF 随后会根据该签名特征,对请求风险进行精准识别与拦截。
请根据移动操作系统,参考SDK集成指南,集成App SDK。
日常运维
编辑模板
单击目标模板操作列的编辑,在编辑模板面板中对模板进行编辑。
删除模板
单击目标模板操作列的删除,在删除对话框中确认删除信息后单击确认。
复制模板
单击目标模板操作列的复制,在复制对话框中确认复制信息后单击确认。
开启或关闭模板
新建的模板默认开启,单击目标模板模板开关列的
开关,可开启或关闭该模板。查看规则
单击目标模板的
图标,查看该模板的规则信息,单击目标规则状态列的
开关,可开启或关闭对应规则。针对已启用的规则,可查看其命中趋势。若规则动作类型为JS验证、滑块或严格滑块,还可查看人机校验通过率。