防刷机制的一些思考

现在很多产品,为吸引新用户,往往会有一些激励措施,比如赠送一些免费的资源等。像理财类的app赠送的就更多,都是真金白银。因此也吸引了网上许多的人,反复注册,使劲薅羊毛,俗称羊毛党。如何才能防止被刷,又不降低真实用户的用户体验呢?一般的做法,是增加薅羊毛的成本,提升验证的难度。在我们的产品中,可以区分用户的有手机号、身份证、银行卡、设备唯一号(必须是App才有),Ip地址等。

  1. 设备唯一号
    现在有很多的模拟器,可以修改设备参数,所以设备唯一号,只对那些使用真实手机的羊毛党有效。如果是使用模拟器的技术流羊毛党,也比较难。不过这里还有改进的空间,可以在app中增加识别模拟器的功能,可以防止一部分比较弱的模拟器,高端的还是防止不了。
  2. IP地址
    这个可以换。而且真实的app用户,也是多个用户对应同一个IP地址,容易引起错误封杀。
  3. 手机号
    现在手机号的成本已经很低了,那些羊毛党基本上手里都有一大批的虚拟号或者真实号。自从有了阿里小号之后,虚拟号就更加容易获取。现在手机号基本上防止不了。目前也没有好的办法可以区分真实号码和虚拟号码。
  4. 身份证和银行卡
    办身份证和办银行卡的成本应该最高的。无奈羊毛党还是可以收集到很多的身份证和银行卡,他们的资料都是实打实的。所以即使我们限制一个身份证和一个银行卡只能领取一次奖励,那也只能增加我们的黑名单长度,第一次还是被薅走了。

从上面可以看出单独利用某一个特征来做防刷都比较难处理。在用户提取奖励的时候,利用上面的信息做一些限制,设置一段时间内同一个设备号的提现次数,设置相同IP的注册次数,设置手机号的接收验证码的次数。还有就是利用收集到的信息,事后分析。将定位到的羊毛党的手机号、身份证、银行卡等信息列入黑名单。