当前位置:首页 > 未分类 > 正文

运营必读!防薅羊毛技术完全解读!

admin 发布:2024-11-26 04:02 7


薅羊毛这三个字大家都非常熟悉了,典故出自 1999 央视春晚小品《昨天・今天・明天》中的“薅社会主义羊毛”。

而现在的薅羊毛主要发生在互联网上,尤其集中在电商平台、P2P网贷平台等。

无利不起早,正式因为这些平台有明显的利益可图,所以即使需要耗费很大的精力,也有很多人乐此不疲。

大家可以搜到,网上有各种薅羊毛信息发布网站,还有许多有组织的薅羊毛群体,这背后是非常大的产业。

正因为羊毛党之多,斗争困难,很多网站和商家对此都很痛苦,同时又感觉很羊毛党神秘,好像羊毛党有什么深不可测的技术,无力抵抗。

所以本文的目的就是对防范羊毛党的技术做个科普,让大家知道羊毛党到底是怎么薅的,有哪些方法可以杜绝羊毛党的薅羊毛行为。

大家可以先预览一下全文的脉络:

羊毛活动网_羊毛活动_羊毛活动分享平台

1. 羊毛党的分类

根据具体薅的方法不同,可以把羊毛党大致分为五类:

1.1 刷单刷票类

这类用户主要靠刷单刷量获取利益,比如:淘宝刷单、刷评论等。刷票也算,代刷投票、阅读数、粉丝数等等。

1.2 任务类

顾名思义,很多网站对特定任务会有奖励,比如注册、问卷、绑卡、实名认证等等。

有些是消耗时间和注意力,有些干脆是拿自己或别人的信息卖钱。

1.3 黄牛党

黄牛党一般利用信息不对称或者技术优势、人脉优势,可以更早、更快获取信息。

也可能是团队合作,共享资源,往往会对某些稀缺资源进行垄断,然后再高价转手获利。

比如:多火车汽车票,有现场排队的黄牛,也有互联网上的黄牛。

1.4 黑客类

如果论技术,这些人也未必称得上黑客。但是特点还是利用技术手段找到平台安全漏洞,获取利益。

如果无节制,直接把羊薅死也不一定。比如积分商城的商品、抽奖的现金、优惠券代金券等等。

或者直接爆库,转卖用户数据等。这一类基本都是违法行为,是要追究法律责任的。

1.5 漏洞研究类

这类用户主要研究活动规则的漏洞,也可能加上一点技术手段。跟黑客的区别就是,系统可能没有漏洞,只是没有做好防薅的工作而已。

或者是活动规则设计不健全,使之有利可图,比如信用卡养卡。

当然,养卡这种还有深层次原因,平台也需要这些活跃用户,这种算是互赖型的薅羊毛。

羊毛活动分享平台_羊毛活动网_羊毛活动

如果再抽象一点,可以分成手动和自动两大类。

手动的薅羊毛,即人肉薅羊毛,靠各种群集合起来,有羊头组织和派发任务,其他人只要抽出些碎片时间参与即可。

自动的就是要建立一套程序,在特定活动时开启,或者针对某些平台长期运行。

本文主要讨论:如何防范自动化的薅羊毛?

因为除了黑客之外,这种羊毛党危害最大。而防范黑客的话题太大,也没有什么固定的解决方案,讨论也没啥用。

而对于人肉薅羊毛,做任务、刷单等,目前也没有太好的办法,毕竟都是真实的用户,除非有明确的行为数据模型可以命中,否则只能当做正常用户,这个后面会提到。

2. 通过运营手段防范

我们都知道羊毛党的危害非常大,尤其对于运营活动来说,最常导致的问题就是运营成本失控、数据样本失真、垃圾账号混淆、公正性失信等等。

其中,运营成本失控,如果把握不好,拖垮公司都是有可能的。

而数据统计的失真,也导致无法清晰判断后续的运营策略。羊毛党的蜂拥而至,也会降低真实用户的积极性这忠诚度,榨干平台。

要想防范羊毛党,最主要的还是控制利益的诱惑,避免直接利益,比如红包话费等。

而对于优惠券之类,用户需要购买才能使用的,诱惑就没那么大了。除非是五折以上或者是大额现金券。

此外,购物也需要填写明确的收货地址及其他个人信息,羊毛党会相对谨慎一些。

因此,在制定营销活动时,必须制定完备的业务规则,必须要有相应的活动门槛和限制,例如——

2.1 用户群体限制

定义哪些类型的用户能参与活动,指定清晰的分界线。对于特定的活动,可以适当提高参与门槛,比如 :V2 以上会员可以参与,有过购买记录的可以参与等等。

这种主要针对特定群体会员做运营,对于被排除在外的用户,体验就没那么好了。

羊毛活动_羊毛活动分享平台_羊毛活动网

羊毛活动分享平台_羊毛活动网_羊毛活动

2.2 客户端版本限制

定义哪些 APP 或小程序版本能参与,比如:拉新活动要求必须使用最新版 APP 注册才给奖励。

2.3 次数/上限限制

明确定义账户级、设备级、实名信息级能参与活动的上限和参与活动的频率等。

活动给用户的预期要控制在合理的范围,并且控制上限,才能有效防范羊毛党。

比如:每个账号的上限,每日活动预算的上限。活动规则中也要明确说明,如果发现有人通过刷单刷票等形式违规操作,平台有权取消其参与资格或相应奖励。

这样对于异步发放的奖品,也可以在发放之前检查一下数据,筛掉可疑用户。

最后,对于所有活动的数据,在开发之前就要明确提出需要监测哪些数据。

不然活动都已经跑起来了,没有预先埋点的东西肯定是拿不到的。

作为运营对数据一定要极其敏感,如果有暴增的用户量或者参与量,就要小心是不是有羊毛党来袭,而不是光顾着乐。

3. 通过技术手段防范

我们可以先简单看一下腾讯云的防刷接口对风险类型的定义:

羊毛活动分享平台_羊毛活动_羊毛活动网

通过技术手段薅羊毛,最常见的就是高频刷接口,恶意注册账号,撞库等。

而这类羊毛党,一般会大量养卡,或有很多虚拟的打码平台,可以提供手机号+验证码服务。

有的可能还会拥有大量动态IP地址,海外服务器,以及批量的身份证等。还有专业的设备,称作“猫池”、“卡池”。

对于移动端的业务,许多这类公司还购入大量实体手机,再通过软件批量控制,称为“群控”,这个我在《微信里的赚钱路子》文章里提到过。

对于这种羊毛党和黑灰产,传统的防护手段一般有三种:封IP,封用户,增加验证码。

下面分别进行讲解——

3.1 封禁 IP 或 IP 段

针对异常 IP,我们可以通过技术手段直接封掉。目前大部分网站的接入层都是 Nginx,那么可以考虑使用 deny 配置封禁 IP 或 IP 段:

deny 1.2.3.4;deny 1.2.3.4/24;

如果运维层面不方便操作,也可以把请求放到应用层封禁,由 WEB 容器来解决。

这里要注意,封禁 IP 或 IP 段是有风险的,许多公司对外的出口 IP 都是统一的,如果全公司很多人同时访问某网站,就可能被误伤。

共享的 WIFI,某些移动基站也可能是有固定的出口 IP,所以最好轻易不要封禁 IP 或 IP 段。

3.2 封禁用户

我们可以根据某些特定的规则,筛选识别出一批用户,对其进行一些限制。

可以采用黑名单机制,或者用户风险分级、信用分级等等。然后再根据黑/白名单,或用户等级限制特定的行为,比如:完全拒绝服务、限制某些功能、限制大奖等等。

封禁用户的标记有很多种,最基本的如果用户有登录态的话,就可以直接封账号。

如果没有的话,可以通过设备指纹来标识设备,根据平台的不同,设备指纹可以是 PC 端的浏览器指纹,移动端的 IMEI、MAC 地址、UUID 等。

或者这些条件综合起来计算出来的 machine key,使之无法造假,然后在关键请求时校验 machine key 的合法性。

网络环境也是个因素,WIFI 和 4G 的切换,或者网络 IP 的变化,都可以是拒绝服务的理由。

这种在银行 APP 中最常见,如果切换了网络,银行 APP 一般会要求重新验证身份才能继续操作。

然而,目前市面上已经出现了各种改机软件和模拟器,能不断修改设备信息,让一般的设备指纹失去作用。

这种方式的风险就是:规则要慢慢养成,过程中必然有遗漏和误杀,操作不当可能会引起大量投诉。

所以,这种方式最好是宽进严出,默认用户都是好的,再慢慢收紧,识别出明确的恶意用户。

对于可疑但不确定的用户,可以先标记等级,再针对这些等级单独观察后续行为后,对其进行等级的升降。然后,针对不同等级限制行为。

关于羊毛用户的识别标记,可以是基本数据是否健全,比如——

资料是否完整,是否有真实可信的昵称,手机号等;

行为数据,如鼠标点击、鼠标移动、按键次数,每次打卡是否固定时间等等;

更高级一点的,可以实施全路径实时布控策略,从 APP 启动、账号注册、登录,到业务场景(如直播热度/电商销量排行等),再到设备风险(篡改、虚拟机、设备农场、积分墙等)设下层层关卡,全栈式防御欺诈行为。

3.3 增加验证码

验证码有很多种,往往加在重要操作流程中,比如:注册/登录/绑卡/支付等环节,大家应该都体验过五花八门的验证码。

比如:注册用户时的拼图滑块、Google 的 I’m not robot、手机验证码、图片验证码等等。

第三方授权的功能也是一道天然屏障,比如:微信授权、QQ登录授权,这样恶意用户需要先经过第三方验证一道,起码在访问频率和账号真实性上多了一道屏障。

如果业务允许的话,还可以要求用户进行实名认证,密保问题校验等等。当然,步骤越多体验就越差。

羊毛活动网_羊毛活动_羊毛活动分享平台

验证码的主要作用就是:区分操作者到底是人还是机器。

但是,不同的验证码难度千差万别,普通的手机验证码,有专门的打码平台可以提供 手机号+验证码 服务,而且都是程序对接,自动化执行。

而对于一般的图片验证码,也有很多公开的图片验证码识别服务。

因此,才会导致各个平台的验证码越做越复杂,到了人类都很难辨认的程度,体验很差。

3.4 系统限流

限流只能一定程度上缓解,或者说让风险可控。主要是防止恶意请求流量、恶意攻击,或者防止流量超出系统的峰值,破坏系统。

前面第 1 小点封禁 IP 也可以理解为限流的一种,在接入层直接拒绝,对于系统资源的损耗最小。

而对于网络流量,可以使用 Nginx 的 limit 模块进行限制,防止过大的流量穿透到后端应用。

常用的限流算法有两种:令牌桶算法,漏桶算法。

令牌桶算法,是:一个存放固定容量令牌的桶,单位时间内,拿到令牌的才能通过,多余的不派发令牌;

漏桶算法则是:单位时间内流出的数量固定,流入无所谓。

那么,无论对于网络请求的数据量,还是用户新增的数量,奖品发放的数量,都可以使用这两种思路进行限制。

这里是系统架构的知识,不再赘述。

3.5 离线数据分析

如果活动已经在进行,或者活动已经结束,但是总感觉不对劲,这时候就要采用离线数据分析的方法,仔细辨别是否有羊毛党的存在。

那么,数据从哪里来呢?

前面提过,除了活动必须的数据之外,如果想更深入地分析用户行为,那么在需求设计阶段就要想好,希望记录哪些行为,便于后续分析。

如果系统没有提供这些能力,显然也没有相关的数据可以分析了。

3.6 综合解决方案

完整风控解决方案,不仅要考虑用户体验,同时又要兼顾效果,需要考虑很多方面。

因此,有很多大小公司都专门提供了这方面的解决方案。

比如:腾讯、阿里、网易等等,此外还有许多提供这种业务的公司,搜索“防薅羊毛”就会出现很多。

这些解决方案的基本原理与上述技术无异,只是数据基数更大,再加上机器学习和大数据分析,可以更加准确识别出恶意用户和黑产用户。

以下内容(3.6.1 – 3.6.4)来自网易易盾《全链路风控解决方案深度解读》中提到的风控服务,不代表本人观点,仅供参考,文末参考文献中有文章链接,感兴趣的同学可以前往查看。

事前预防:通过数据采集收集用户侧信息、通过业务规则来限定参与活动的门槛、通过身份核验来确认用户身份等手段,防止风险事件的发生。

事中检测处置:通过实时在线的手段来检测风险,并做相应的风险处置,防止风险事件的发生。

事后分析回馈:基于长周期的离线数据分析,计算用户侧、设备侧、IP侧、业务侧的各种风险特征,并作用于事前风控和事中风控。

3.6.1 事前预防

事前预防主要有三个层面的事项:数据采集、业务规则、身份核验。

a)数据采集

在业务活动的各个阶段,都需要埋点采集数据,主要有设备指:纹、操作行为、网络数据、业务数据、第三方数据等。

采集的数据主要用于事中的风险监测和事后的离线分析。

b)业务规则

在制定营销活动时,必须制定完备的业务规则,必须要有相应的活动门槛和限制,例如:

c)身份核验

身份核验主要是为了确保是用户自己来参与活动,主要手段包括——

手机短信校验;验证码校验;密码校验;密保问题校验;本机校验:校验手机号对应的SIM卡是否在当前设备中使用。

实名认证,有三种——身份证OCR校验;身份证OCR、人脸校验;身份证OCR、活体检测;个人信息。

3.6.2 事中检测处置

事中检测主要依赖人机识别、风控引擎、风险处置三个手段。

a)人机识别

人机识别主要区分是人,还是机器自动化的行为。

客户端与后端的数据交互过程中,增加如下的数据保护手段,一旦发现数据有问题,则都是机器行为。数据合法性校验;数据加解密;数据篡改检测。

b)风控引擎

事中检测的核心工具就是风控引擎,风控引擎主要的工作是识别风险,一般的风控引擎都需要如下几个功能:

c)风险处置

识别到风险之后,需要对风控进行处置,处置手段一般有:

3.6.3 事后分析回馈

事后主要是做离线分析,分析结果可作用于事中实时检测和事前预防。对于T+N的业务(比如:拉新奖励金提现),离线分析之后,若识别出风险,也可以做拦截(拒绝此次提现)。

离线分析主要有几个方面:

3.6.4 全链路布控

全链路风控解决方案另一个非常重要的过程是:全链路布控。若只是构建了全链路风控模型(工具),未做全链路部署,那也是大材小用。

全链路布控主要要做到——

1)多业务布防

在业务的各个环节都需布控防刷手段,一般的营销活动都需先注册、登录,再参与营销活动。

所以,可以在注册、登录、营销活动各个环境都布控风控检测。

2)联防联控

前置业务为后置业务产出事前特征,避免后置业务风控检测冷启动;

后置业务为前置业务提供事后特征,比如:准实时、中长周期的风险特征。

3.6.5 第三方解决方案的弊端

第三方解决方案的弊端就是对系统的侵入,需要我们在自己的系统里嵌入许多外部代码。

那么,带来的风险就是:系统数据全部开放给外部,用户数据风险,业务经营数据风险,系统可用性风险等。

一旦外部系统出现问题,可能导致我们自己的系统不可用,或者数据泄漏。

如果不能接受这一点,或者无法信任第三方,或者公司政策不允许,那就无法使用这种服务。

4. 总结

最后,我综合总结一下全文的梗概,如果前面都没仔细看的话,那么只看这里就可以了。

(1)适用范围:主要针对自动化薅羊毛的防御。

(2)业务逻辑设计

拉新活动要小心(拉新送、注册送、关注送、新用户立减、日常打卡、签到、获得积分、积分兑换、抽奖)。

(3)系统设计

接入层:Nginx,限制频率,IP 黑名单(代理IP识别);

应用层:redis,漏桶,令牌桶算法;

接口层:访问控制,防重入 token(token是用户一次操作的唯一标识),模糊的响应迷惑恶意请求;

业务层:验证码,黑/白名单机制(大数据),设备指纹,行为数据,全链路布控;

界面层:提高破解门槛,防自动化(按键精灵等);

数据分析:分析历史作弊数据,优化活动奖励,采用堵不如疏的策略,与其强硬的一刀切,不如提升攻击成本,减少获利;机器学习,大数据反作弊平台,GCN、Node2V、Louvain、GAN、GBS、LSTM等模型,我也看不懂了~

以上,就是防范羊毛党相关技术的全部内容,建议收藏。最后,我们再回顾一下文章脉络:

羊毛活动分享平台_羊毛活动_羊毛活动网

5. Q & A

问:要不要使用第三方风控服务?

答:

这完全取决于你所在公司或业务的状况,包括对数据风险的容忍度、系统对接的难度、费用问题、招标等等。具体情况具体分析了。

问:被拒绝的用户的体验是怎样的?

答:

这里可以适当柔性处理,如果不确定是否恶意用户,可以做隐性的限制,再根据后续行为继续观察打标。

对于恶意刷接口、刷票等,也可以返回具有迷惑性的错误提示,避免羊毛党猜到系统判断逻辑。比如我就遇到过刷票接口,使用技术手段尝试,每次都返回投票成功,但实际并没有,你也不知道为啥,因为没有特定的错误码和提示。别问我为什么知道。

问:限制自动化有具体的例子吗?

答:

微信 PC 客户端就是个很好的例子。你可以用按键精灵或者 autoit 之类的软件尝试,会发现它的窗口是捕获不到的,所以就很难编写自动化脚本。不过,在安卓下面由于系统可以高度定制,所以这都不是问题了。

好了,如有大家还有其他任何疑问,欢迎随时留言与我沟通。

参考文献:

羊毛活动网_羊毛活动分享平台_羊毛活动

如何获得

参与【本期热议话题】的回答

即有机会赢取书籍

▼▼▼

具体规则:

1. 【运营派精选小程序】会在12月4日 11:11自动开奖,抽一人获得书籍。

0


暂无评论,欢迎抢沙发
欢迎评论