数据风控帮助您防御网站关键业务(如注册、登录、活动、论坛)中可能发生的欺诈行为。

功能描述

数据风控基于阿里云的大数据能力,通过业内领先的风险决策引擎,结合人机识别技术,防止各类场景的关键业务欺诈行为。您只需接入WAF即可使用数据风控,轻松获取风控能力,而无需在服务器或客户端做任何改造。

数据风控支持防护的场景包括但不限于以下内容:

  • 垃圾注册
  • 短信验证码滥刷
  • 撞库、暴力破解
  • 恶意抢购、秒杀、薅羊毛、抢红包
  • 机器人抢票、刷票、恶意投票
  • 垃圾消息等
说明
  • 数据风控仅适用于网页/H5环境,原生APP防护请参考SDK方案
  • 对于按量付费的WAF实例,您必须在功能与规格中启用数据风控,才能使用该功能。具体操作请参考功能与规格配置

下图描述了数据风控的工作流程。

关于接入数据防控的应用场景示例和实际效果,请参考应用示例

操作步骤

参照以下步骤,启用并配置数据风控:
说明 执行以下操作前,请确保已将网站接入WAF进行防护。具体操作请参考CNAME接入指南
  1. 登录云盾Web应用防火墙控制台
  2. 前往管理 > 网站配置页面,并在页面上方选择WAF所在地区(中国大陆、海外地区)。
  3. 选择要操作的域名,单击其操作列下的防护配置
  4. 数据风控下,启用防护。
    说明 如果您不想使用数据风控,您可以在此页面关闭防护。


    说明 启用数据风控时,您会收到提示,WAF将在页面插入js插件用作安全防护,页面响应内容会以非gzip压缩方式进行传输(即使您的网站使用的是非标端口访问,在配置数据风控时也无需进行额外配置)。确认以上影响后,在 提示信息对话框中单击 确定

  5. 选择防护模式
    • 预警:识别到业务攻击时,只记录日志,不做拦截,攻击情况可通过业务风控报表查看。
    • 防护:识别到业务攻击时,弹出防护页面进行验证。
    说明 默认使用预警模式,风控不会对任何请求进行拦截,但依然会在页面插入js进行客户端行为分析。
  6. 单击前去配置
  7. 单击新增防护请求,添加防护规则。

    1. 选择防护场景
      • 注册:防止机器注册、注册短信被攻击。
      • 登录:防止刷库撞库、暴力破解。
      • 论坛:防止批量发帖、垃圾评论。
      • 活动:防止刷红包、抢优惠券、黄牛抢号。
    2. 设置防护请求URL,即要防护的接口地址。该地址应该是执行业务动作的接口地址,而不是这个页面本身的地址。以下面的注册页面为例:

      假设这个页面本身的地址为www.abc.com/new_user,获取验证码按钮对应的接口是www.abc.com/getsmscode,注册按钮对应的接口是www.abc.com/register.do,则风控防护的具体地址应该配置为:

      • www.abc.com/getsmscode //防护短信接口被刷
      • www.abc.com/register.do //防止垃圾注册

      而不应该是www.abc.com/new_user这个页面地址。如果设置为页面地址,则正常用户直接访问该页面时也会有验证滑块弹出,影响体验。

      说明
      • 防护请求必须精确到请求URL,不支持模糊匹配。如果填写www.test.com/test,则只匹配test,不匹配test下的所有请求。
      • 数据风控支持目录防护,如果您将防护请求URL配置为www.abc.com/book/*,则可防护www.abc.com/book路径下的所有请求。不支持配置全站防护(如www.abc.com/*),这样会导致用户访问首页也弹出滑块。
      • 直接请求风控防护的URL一定会被弹出滑块验证,所以请确保配置的防护地址在正常情况下不会被直接提交(即正常用户应该是经过一系列前置的访问才会请求这个地址)。直接调用API的场景也不适用于数据风控的场景,会被拦截。因为API调用也是直接发起的机器行为,无法通过风控的人机识别验证。但是,如果是真人点击页面某个按钮调用了API服务,是可以使用数据风控的。
  8. 添加完规则后,您可以编辑或者删除规则。


启用数据风控后,您可以使用WAF的全量日志功能查看防护结果。关于日志示例,请参考下文查看防护结果

应用示例

以下为应用数据风控进行防护的一个场景示例,详细解释了数据风控的应用效果,供您参考。

用户小白有一个网站,域名是www.abc.com,普通用户可以通过www.abc.com/register.html注册成为会员。

近来,小白发现有黑客在用一些恶意的脚步频繁提交注册请求,注册大量垃圾账户来参与他举办的抽奖活动(此类黑客即羊毛党)。这些请求跟正常的请求很像,频率又不是太高,传统的CC防护很难分辨出这种恶意请求。

于是,小白将网站接入WAF并为www.abc.com域名开启数据风控(参考操作步骤步骤4-5)。因为小白最关心的业务是www.abc.com/register.html,所以他针对这个URL配置了特定请求防护(参考操作步骤步骤6-8)。

从配置生效的那一刻起,WAF会做下面这些事情:

  • 观察和分析每一个访问www.abc.com这个域名(包括首页及其子路径)的用户的各种行为是否有异常,并结合阿里云大数据的信誉库去判断这个源IP是否有风险。
  • 当用户提交注册请求到www.abc.com/register.html时,由于WAF针对这个URL配置了请求防护,WAF会基于这个用户从开始访问本站,到提交注册请求之间的行为和征信特征来判断这个用户是否可疑。例如,如果一个用户没有任何前置操作就直接提交了一个注册请求,则这个请求就很值得怀疑。
    • 如果WAF觉得这个请求是可疑的,或是该客户端IP曾经有过不良的记录,则会弹出验证滑块去验证用户的身份,通过验证的用户会继续完成注册。数据风控的拦截页面如下图所示。

      • 如果滑块验证通过,但通过的方式很可疑(比如用脚本去模仿真人滑动过程等),WAF会继续进行其他的验证,直到完全放心为止。
      • 如果无法通过验证,则WAF会最终阻断该请求。
    • 如果WAF基于之前的行为判断这是一个正常的用户,则该用户将不会有任何感知地完成注册过程。

在整个过程中,数据风控是针对整个域名(www.abc.com)开启的,也就意味着,WAF需要对这个域名下的全部页面插入js代码来判断客户端是否可信。而真正的防护和验证,是针对www.abc.com/register.html这个特定接口生效的,直到这里WAF才会对具体的请求做出干涉:如果客户端之前的行为可信,则不加干预直接放行,反之则需要通过验证才能继续。

查看防护结果

您可以结合WAF的全量日志查询功能来排查数据风控的监控和拦截情况。例如,

  • 下图显示了通过风控验证的日志情况。

    正常用户经过风控验证的访问请求URL会带上一个ua开头的参数,但请求会被转发到源站,也会收到正常响应。

  • 下图显示了被风控拦截的日志情况。

    但如果直接请求这个接口,一般不会带上ua参数(或带着伪造的ua参数),请求会被WAF拦截,这时对应的日志是看不到源站响应的。

综上,您可以使用 全量日志功能,在 高级搜索 > URL关键字中配置启用数据风控的接口,来排查其拦截情况。