问答 / 533 / 18 / 创建于 2个月前 / 更新于 2个月前
最近做了一个项目,里面有个抽奖功能。运行过程中发现有人使用不同微信(微信授权登录)不同IP进来薅羊毛。针对这种情况如何提高羊毛党的成本!
接入各大厂商人机监测系统,可以无感检测是否是真人操作,让他们去正面刚,ip限流不可取,比如企业公网ip,大家都是一个ip,换句话说一切请求信息都是可以伪造的,厂商的检测系统大部分时间还是靠谱的,比如网易云盾,极验验证
写一人仅限一次,然后微信不是有授权实名认证吗,根据实名认证的来,小号一般没什么认证,再麻烦点就更好了,像我这种点外卖买东西都懒得好评返现的人可能看见你让我填信息我就走了
授权的时候去绑定手机号,手机号也是成本。
:flushed: return '红包已抢完';
ip做一层代理就解决你这个问题了,而且代理这个东西,现在成本也没以前那么高了。
1,抽奖频率限制 使用缓存锁限制指定时间段内参与的抽奖人数, 同一用户添加规定时间内的次数限制,冷却后才可以再参与
2,抽奖条件限制,必须是微信授权过登录和手机号的用户
3,验证码机制 在抽奖前要求用户完成图形验证码或者滑动验证码以后才可以抽奖
限制IP确实会有一定的误杀,因为好多小区都是共享带宽,可能一栋楼都是一个出口IP,或者有的公司,全公司人都是同一个IP。而且限制IP意义不大,羊毛党专业干这个的,他们最不缺的就是IP了,即使你不限制IP,羊毛党也会习惯性的每次请求换个新IP。
可以参考下这个,官方有自己的参考方案:developers.weixin.qq.com/miniprogr...
直接按官方的风险接口,对用户openid进行一个评级标记,他们参加抽奖,就可以给return掉。 顺便再结合一些其他维度的加强验证,基本也差不多。
看你针对什么样的用户群体,如果是注册用户,可以限制注册30天以上的人才能参与抽奖
他使用不同微信,本质上就是两个人了,只是借用别人的号操作,这种没办法防,也不用防,ip限流不行,人家一家五口人,一人抽一次凭啥不让人抽
验证码
禁止模拟器运行 App
客户端定时上报设备的电量、手机温度、已安装 App 列表等数据。
如果检测到电量和温度数据长时间保持不变,或者设备中缺少如电话等核心系统应用,可以初步判断为模拟器环境。
对于羊毛党常用的脚本软件,可以通过扫描设备已安装应用列表,识别违规软件的安装情况,以此进一步判断设备是否存在异常。
设备与账号的绑定限制
限制设备与账号的绑定数量。例如,一个设备码只能绑定一个账号,或一个账号只能同时在一个设备上登录。
对频繁切换设备或账号登录的行为进行监控,并对异常情况进行拦截或验证。
地理范围内的账号数量限制
针对群控工作室等集中操作场景,可以通过地理位置的 Geohash 算法,限制特定范围内登录账号的数量。
如果同一位置的账号数或操作频率异常,触发风控机制,对该区域的登录行为进行限制。
客户端加密,提升破解难度
对客户端的关键逻辑进行加密处理,增加脚本编写的难度。例如,将核心校验逻辑编译到 so 文件中,或者采用动态加载的方式隐藏部分校验规则。
虽然无法完全防住专业级破解者,但可以显著增加破解成本。
适度引入验证码
在高风险操作(如频繁抽奖、异常登录)中引入验证码验证。
验证码的使用应保持合理频率,避免对普通用户的操作体验造成过多干扰。
建立完善的风控系统
收集用户行为数据,分析行为路径和操作逻辑。例如,正常用户的抽奖行为通常会伴随一些合法的前置或后置操作。
利用行为模型分析点击路径、停留时间等特征,识别异常操作。对异常用户触发更严格的验证规则,从而有效甄别风险行为。
采用脚本刷数据这个是羊毛党最常见也是最恶心的做法,最有效的就是通过行为数据分析去识别限制
绑手机,实名认证,或者同ip调低中奖率
我要举报该,理由是:
接入各大厂商人机监测系统,可以无感检测是否是真人操作,让他们去正面刚,ip限流不可取,比如企业公网ip,大家都是一个ip,换句话说一切请求信息都是可以伪造的,厂商的检测系统大部分时间还是靠谱的,比如网易云盾,极验验证
写一人仅限一次,然后微信不是有授权实名认证吗,根据实名认证的来,小号一般没什么认证,再麻烦点就更好了,像我这种点外卖买东西都懒得好评返现的人可能看见你让我填信息我就走了
授权的时候去绑定手机号,手机号也是成本。
:flushed: return '红包已抢完';
ip做一层代理就解决你这个问题了,而且代理这个东西,现在成本也没以前那么高了。
1,抽奖频率限制 使用缓存锁限制指定时间段内参与的抽奖人数, 同一用户添加规定时间内的次数限制,冷却后才可以再参与
2,抽奖条件限制,必须是微信授权过登录和手机号的用户
3,验证码机制 在抽奖前要求用户完成图形验证码或者滑动验证码以后才可以抽奖
限制IP确实会有一定的误杀,因为好多小区都是共享带宽,可能一栋楼都是一个出口IP,或者有的公司,全公司人都是同一个IP。而且限制IP意义不大,羊毛党专业干这个的,他们最不缺的就是IP了,即使你不限制IP,羊毛党也会习惯性的每次请求换个新IP。
可以参考下这个,官方有自己的参考方案:developers.weixin.qq.com/miniprogr...
直接按官方的风险接口,对用户openid进行一个评级标记,他们参加抽奖,就可以给return掉。 顺便再结合一些其他维度的加强验证,基本也差不多。
看你针对什么样的用户群体,如果是注册用户,可以限制注册30天以上的人才能参与抽奖
他使用不同微信,本质上就是两个人了,只是借用别人的号操作,这种没办法防,也不用防,ip限流不行,人家一家五口人,一人抽一次凭啥不让人抽
验证码
禁止模拟器运行 App
客户端定时上报设备的电量、手机温度、已安装 App 列表等数据。
如果检测到电量和温度数据长时间保持不变,或者设备中缺少如电话等核心系统应用,可以初步判断为模拟器环境。
对于羊毛党常用的脚本软件,可以通过扫描设备已安装应用列表,识别违规软件的安装情况,以此进一步判断设备是否存在异常。
设备与账号的绑定限制
限制设备与账号的绑定数量。例如,一个设备码只能绑定一个账号,或一个账号只能同时在一个设备上登录。
对频繁切换设备或账号登录的行为进行监控,并对异常情况进行拦截或验证。
地理范围内的账号数量限制
针对群控工作室等集中操作场景,可以通过地理位置的 Geohash 算法,限制特定范围内登录账号的数量。
如果同一位置的账号数或操作频率异常,触发风控机制,对该区域的登录行为进行限制。
客户端加密,提升破解难度
对客户端的关键逻辑进行加密处理,增加脚本编写的难度。例如,将核心校验逻辑编译到 so 文件中,或者采用动态加载的方式隐藏部分校验规则。
虽然无法完全防住专业级破解者,但可以显著增加破解成本。
适度引入验证码
在高风险操作(如频繁抽奖、异常登录)中引入验证码验证。
验证码的使用应保持合理频率,避免对普通用户的操作体验造成过多干扰。
建立完善的风控系统
收集用户行为数据,分析行为路径和操作逻辑。例如,正常用户的抽奖行为通常会伴随一些合法的前置或后置操作。
利用行为模型分析点击路径、停留时间等特征,识别异常操作。对异常用户触发更严格的验证规则,从而有效甄别风险行为。
采用脚本刷数据这个是羊毛党最常见也是最恶心的做法,最有效的就是通过行为数据分析去识别限制
绑手机,实名认证,或者同ip调低中奖率