一、系统基础配置
- 黑白名单管理
黑名单/白名单:建立黑名单和白名单,将已知的恶意用户或IP地址列入黑名单,限制其访问。同时,将可信任的用户或IP地址列入白名单,允许其正常访问。历史活动中,有明显”羊毛党“属性的访客,希望排除在本次活动参与者之外;
- 定期在固定渠道发起激励活动,希望之前已中奖的用户不会反复在同类活动中奖;
- 单次活动因配置失误导致需要复制活动,为避免在原活动中已参与过的用户再次参与活动消耗奖品,可暂时配置黑名单,互动结束后删除。
添加成功后的黑名单用户在访问该企业账号下的所有作品时,都会被提示“很遗憾,您不符合参与条件,请咨询主办方”。
- 验证码体系
- 滑动拼图:防刷开启强制验证,对准拼图才能参与活动。滑块是一种很常见的行为,参与只需要轻轻滑动滑块填充拼图,即可完成安全验证。滑块可以高效识别人机,同时可以极大提升安全验证环节的用户体验。
- 短信验证:主要应用于让用户填写真实手机号,以及防刷,短信验证无需配置短信内容,由系统自动下发短信验证码。
-
- 限制参与地址
指定某些省、某些城市可参与(不能杜绝,违规违法群体可使用ip代理的方式)。
二、技术方案
1.客户端
- BS 架构的特性导致在客户端的安全性偏弱,这一层重点以客户体验为主,同时尽可能提升恶意行为的复杂度。
- 易企秀除了常规的混淆,压缩技术外,还采用了基于 webassembly的加解密技术,对传输数据进行加密处理。
- 使用webassembly 二进制进行加密,增强破解难度,加密算法使用AES CBC模式每次生成的密文都不同安全性高,对于需要较高安全性接口,支持客户端和服务器端时效性校验,具体流程如下:
-
2.服务端
- 入口防攻击
- 在服务端的入口层,我们部署了自研WAF+第三方防护服务;
- WAF服务基于 ip,cookie 等特征,能对恶意请求,机器人等进行拦截,起到业务防护作用。也能提供降级和限流能力。
- 第三方防护主要用于防 DDOS 攻击,网络渗透等。
- 接口安全(业务安全)
- 当恶意用户破解了客户端加密机制时,服务端还会有一层安全机制来保证业务规则不被破坏。
- 核心业务如抽奖接口,有严格的身份验证,条件验证流程,保障只有合规用户才能参与活动。
- 并发安全
- 大型活动往往会出现较高的并发,商并发时容易出现性能瓶颈或引发逻辑错误,如奖品多发错误等。
- 易企秀在应对高并发主要有两个技术手段:
a.锁机制:
针对用户请求,开启一个用户级的锁机制,避免以同一个用户身份,多次参加活动,同时也不会影响其他用户,成为性能瓶颈;
b.预发放队列机制:
在活动开始前,基于奖品放发规则,预先生成好奖品发放顺序,存入FIFO队列(基于 Redis List数据结构实现),将每次抽奖行为转换为一次队列出队操作,使抽奖活动能提供高并发支持。同时由于是预发成,生成后可以对发奖队列进行数据核验,保障奖品发放准确性。
- 队列生成过程参见抽奖算法说明。该算法可以保障发放准确的同时,遵循抽奖概率规则。
- 数据传输安全
易企秀开放了丰富的 API,以实现和客户业务的深度对接融合。
系统在通过API交互时,除了基于安全传输协议外,使用了双密钥加密:
EncodingKey: 基于SHA-256 加密传输数据,防止数据泄露
SignatureKey: 基于AES/CBC 模式生成参数签名,防止数据被篡改;
- 容错处理
系统运行过程中还是会出现一些未知的总是。因为我们在核心业务逻辑上,都增加了全局容错逻辑,根据异常发生的环节,自动重试以及,把无法发放的奖品重新放回队列,保障最终发奖状态的一 致性。
也会及时告警,必要时人工及时干预处理。
- 防黑产
防黑产是一件不断斗争的过程,易企秀在服务客户过程中也在不断升级。
目前防黑产最有效的方法是,对接已有的用户体验,基于用户身份信息校验,拦截非法用户。
当我们面向公域组织活动,没有有效的用户数据时,还可以借助公域的服务,比如基于腾讯的天御活动保防服务,可以有效的防御微信黑产账号。
3.活动保障服务
技术团队监测活动数据,检测异常行为和灰产活动,将分析数据和行为模式,以识别潜在的灰产风险,并及时采取措施进行干预和防范。运营团队将进行人工跟进和处理,对参与者的行为和数据进行审查。
三、支持接入第三方风控平台
全栈式风控引擎
全栈式风控引擎是基于人工智能技术和腾讯20年风控实战沉淀,以轻量级的 SaaS 服务方式接入,帮助您快速解决注册、登录、营销活动等关键场景遇到的欺诈问题,实时防御黑灰产作恶。
实时风控:全栈式风控引擎依托腾讯云的先进架构,服务可毫秒级响应、高并发并快速返回风控结果,更快发现风险。
多维度识别:全栈式风控引擎支持通过手机号、微信 openid、QQ openid、设备号、IP 等多个维度防御黑灰产欺诈。
*此方案腾讯会收取一定费用