geetest_logo

当前我国电商行业正在迅速发展,自其出现以来至今已有十七年之久,电商行业以惊人的发展速度让我国成功位居全球电商规模之首,形成了以淘宝、京东、抖音、拼多多为首的各大综合型电商平台。各种规模电商平台在行业相互角逐、竞争,为了市场份额他们会联合商家推出大力度的优惠活动。


特别是近五年来,随着人们消费水平的提高,对特殊日子的重视度也相应有所增长,大家越来越在意“仪式感”。因此,在这些日子推出优惠活动现已成为各大电商平台促销的不二之选,如2月14日的西方情人节、3月8日“女神节”、5月20日“告白日”、“618电商大促”、七夕节、11月11日“双十一光棍节”等等......


据官方数据显示今年“618大促”成交量超过1亿5800万,其中多数是由真正拥有消费需求的电商用户达成的交易,但也不乏奔着巨额优惠券而大批量薅羊毛的羊毛党。通常情况下,这些羊毛党为了提高作业效率必定会使用自动化软件,也就是我们口头常说的“脚本”进行高频抢购以此提高成功率。


幸运的是,极验已根据羊毛党的行为动机对易受他们影响而造成巨大损失的电商平台提供了解决方案,即应用在验证码中的“POW防御”。


1. POW防御如何工作


POW工作量证明(Proof of Work),它是指系统为达到某一目标而设置的度量方法。简单理解就是一份证明,用来确认你做过一定量的工作。监测工作的整个过程通常是极为低效的,而通过对工作的结果进行认证来证明完成了相应的工作量,则是一种非常高效的方式。


POW具有完全去中心化的特点,因此还常被用于区块链行业,在以POW为共识的区块链中,节点可以自由进出。比如比特币挖矿采用的就是工作量证明(POW)机制。


POW系统中一定有两个角色,工作者和验证者,他们需要具有以下特点:


工作者需要完成的工作必须有一定的量,这个量由工作验证者给出。

验证者可以迅速地检验工作量是否达标。

工作者无法自己"创造工作",必须由验证者发布工作。

工作者无法找到很快完成工作的办法。


简而言之,无论是羊毛党还是真实用户(工作者)都需向极验证明他们已经完成一定量的特定计算工作,否则算作验证失败。


因POW机制与请求绑定,羊毛党想要获取比正常用户更多的利益势必要发出远超正常用户的高频请求,因此工作量对于正常用户和羊毛党也不相同。


正常用户访问页面调用验证码时,低频的请求所需要的工作量计算对验证流程影响微乎其微。


对于通过脚本来进行抢购而发出高频请求的羊毛党来说,服务器会花费大量资源进行POW计算,他们也就无法在短时间内高频验证。


由此可知,POW防御在验证码的实际应用中有效抵御了非正常用户的交互请求,从而保证了电商平台的业务安全、降低了经济损失。


2.POW的优势特征


无法篡改:对于签名串的生成,是由验证码问题加载(Load请求)返回的验证ID、流水号、消息生成时间等,并加上客户端随机生成的字符串组成,每次请求所获得的签名串都不一样。就算黑产了解了签名串的生成规则,试图通过伪造篡改请求参数,来越过POW机制。极验也可在服务端进行校验时第一时间发现异常。


无法省略:想要获得满足服务端散列校验要求的签名串,需客户端基于HASH碰撞原理,通过客户端生成的随机字符串的不断变化,经过多次的递归运算获取,最终碰撞出满足条件的签名串,相应步骤将无法直接省略,必须完成对应的运算工作量。


难以运算:改变签名串原始数据中的任何一部分,所产生的签名串也会随之变化,因此我们会在运算获得签名串时,加入一个不断改变的随机数,客户端想要获得以0或多个0开头的签名串,则需要经过进行大量的CPU运算,并耗费一定时间成本。


易于验证:当客户端碰撞出合规的签名串后,会在验证码答案提交时(Verify请求),将签名串及对应的原始数据发送到服务端进行验证,服务端仅需进行一次散列校验即可,可快速验证客户端是否已完成对应的运算工作。


3.增加黑产成本的价值意义


根据极验多年和黑产博弈对抗的经验,我们发现大部分黑产都会采用接口或协议破解手段对验证码进行破解,针对这种破解手段的效率高特点。为了抵御黑产的破解,减少攻击行为发生,当前最直接有效的方式便是提高黑产破解攻击成本。


极验推出的POW工作量认证就恰好针对性地增加了黑产的破解成本,其主要目的是让黑产的高频请求都必须经过CPU的大量运算,并投入大量的服务器资源成本,使得黑产在硬件成本及时间成本上的投入变得更大。当破解验证码的价值意义变小,破解行为自然也会减少。


4. 与羊毛党的真实博弈


上个月极验安全运营团队,在日常安全监测巡检中,监测到某客户的业务出现聚集性IP,凭借丰富的对抗经验我们判断出这是黑灰产里成规模的羊毛党在进行违规操作,于是我们针对此客户的H5小程序场景进行了单独的POW难度调整。在多次调整POW难度后,我们观察到羊毛党的验证量和成功量成倍数下降。


后台监测数据


事后我们分析:POW的好处在于它不依赖IP规则从而避免误封真实用户的可能性。其次,哪怕黑产准备了充足的破解资源(如打码平台和秒拨IP)依然需要完成相应的计算工作,因为打码平台和秒拨IP并不会帮黑产完成计算工作。而对于黑产而言,想要抢占正常用户的业务资源,势必要发出远超正常用户的请求,堆积在黑产处的高频请求带来的就是超高的计算工作,来保障接口服务的公平性。


结语


POW不仅适用于电商行业的业务安全方案,同样适合新兴的区块链行业和传统航空行业等等,只要通过增加POW机制,就能让机器流量的每次请求都必须经过CPU的大量计算资源,并投入大量的时间成本。在此同时有效保障正常用户体验,降低机器流量访问频率,有效压制爬虫的并发,降低企业服务端负载。


Start your free trial
Over 320,000 websites and mobile apps worldwide are protected by GeeTest captcha