09|御敌国门外:黑产对抗——防刷和风控
佘志东
你好,我是志东,欢迎和我一起从零打造秒杀系统。
经过前面对秒杀业务的介绍,你现在应该清楚,秒杀系统之所以流量高,主要是因为一般使用秒杀系统做活动的商品,基本都是稀缺商品。稀缺商品意味着在市场上具有较高的流通价值,那么它的这一特点,必定会引来一群“聪明”的用户,为了利益最大化,通过非正常手段来抢购商品,这种行为群体我们称之为黑产用户。
他们确实是聪明的,因为他们总能想出五花八门的抢购方式,有借助物理工具,像“金手指”这种帮忙点击手机抢购按钮的;有通过第三方软件,按时准点帮忙触发 App 内的抢购按钮的;还有的是通过抓取并分析抢购的相关接口,然后自己通过程序来模拟抢购过程的。
可不管是哪种方式,其实都在做一件事,那就是先你一步。因为秒杀的抢购原则无外乎两种,要么是绝对公平的,即先到的请求先处理,暂时处理不了的,会把你放入到一个等待队列,然后慢慢处理。要么是非公平的,暂时处理不完的请求会立即拒绝,让你回到开始的地方,和大家一起再比谁先到,如此往复,直至商品售完。
因此黑产的方法也很简单,就是想法设法比别人快,发出的请求比别人多,就像在一个赛道上,给自己制造很多的分身,不仅保证自己比别人快,同时还要把别人挤出赛道,确保自己能够到达终点。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
秒杀系统面临黑产用户的挑战,对系统造成巨大威胁,破坏公平抢购环境并带来性能开销。本文介绍了针对黑产流量的防刷和风控措施。作者提出了针对黑产流量快速和高频率的防范策略,包括Nginx有条件限流和Token机制。通过Nginx限流规则和Token机制,可以有效防止黑产流量对系统的冲击,确保系统的正常运行。文章详细介绍了Nginx限流规则的配置和实践,以及Token机制的实现步骤和效果验证。黑名单机制提供了更严格的防范方案,可以有效拦截大部分场景下的刷子流量,保障秒杀系统的稳定运行。风控在秒杀业务流程中非常重要,需要建立在大量的数据之上,并通过复杂的实际业务场景考验,不断做智能修正,才能提高风险识别的准确率。风控的建设需要多平台、广业务、深覆盖,才能够尽可能多地拿到用户数据。总结来说,本文介绍了如何对抗黑产,提出了多种应对方案,但也指出了各种机制的不足,强调了多维度组合使用的重要性。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《手把手带你搭建秒杀系统》,新⼈⾸单¥59
《手把手带你搭建秒杀系统》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(9)
- 最新
- 精选
- 上班只摸鱼如果我既想做到严格针对用户 ID 的防刷,又不想使用 Redis,该如何实现呢? 可以使用 用户ID作为key, hash 到同一台nginx服务器进行防刷策略
作者回复: 思路是正确的,如果是在nginx的前一层(vip或者还是nginx)做,就是您说的这样,如果是在我们文章中提到的nginx服务做hash,那就可以在后端web服务做防刷,这只是种防刷补充。
2021-11-0125 - qinsi没太明白防刷Token的作用:如果生成Token的信息客户端都知道的话,那么客户端自己就可以生成最后一步的Token,直接调用最后一步的接口;如果生成Token的信息需要从前驱的接口中获取,那么势必就无法跳过对前驱接口的调用,那么也就不需要Token来限制必须要调用前驱接口了。
作者回复: 生存token的方式是后端自己定义,对客户端不可见的,如果您发现token被破解,还可以通过在前置步骤中,往redis存入一些关键信息,然后提单时去校验的方式来防止跳步。其实安全对抗一直都是动态变化的。
2021-10-154 - Bold黄牛也能绕过前端页面,通过接口直接获取Token,感觉只是增加几个接口调用,还是会比正常用户快2022-01-2612
- 上班只摸鱼如果我既想做到严格针对用户 ID 的防刷,又不想使用 Redis,该如何实现呢? 可以使用用户ID作为key 进行hash, 同一个用户ID路由到同一台Nginx服务器进行防刷策略2021-11-011
- 一个卖火柴的老男人嗯,很喜欢2021-10-151
- 速水御舟st 的生成只是简单地将用户 ID+ 步骤编号 那么每次的步骤编号是不是应该加1,应该是记录在某个地方的吧,您里边只是写死了1和22023-06-11归属地:河北
- 寒溪st 英文全称是什么?2023-04-27归属地:上海1
- demo123567挂了代理咋识别呢2023-03-02归属地:重庆
- Muscleape“但也正因为基于单机,如果黑产将请求频率控制在 1*Nginx 机器数以内,按请求理想散落的情况下,那么就不会被我们抓到” 上面这个没有理解呢,麻烦详细解释一下,谢谢。2022-01-052
收起评论