Question | 移动端虚拟机注册等作弊行为的破解之道
本文来自网易云社区
“Question”为网易云易盾的问答栏目,将会解答和呈现安全领域大家常见的问题和困惑。如果你有什么疑惑,也欢迎通过邮件(zhangyong02@corp.netease.com)提问。

这是一个典型的反欺诈问题,在金融/互联网金融、搜索引擎广告、电信、电商等领域都是关注的重点,今天易盾将此问题拎出来给大家单独讲讲。
首先需要明确判断 Spam 帐号的方法。
判断一个账号是不是Spam账号,无非就是看这个账号从哪里来,以及做了什么。具体可以从以下维度判断:注册来源,所在的IP、设备ID、用户行为。
1.注册来源
用户未产生行为之前,帐号IP和设备ID是判断的直接依据。一般来说,企业会有针对Spam账号所积累的黑名单库,其中IP、设备ID均在列。通过黑名单库的识别,可以提前过滤掉一部分Spam账号。但设备ID/IP信息是可以不断变更的,仅靠积累的库并不能解决问题。
2.注册信息
注册信息包括昵称、注册邮箱、手机号等。注册信息的发生,即用户已经产生行为。有了实在的证据之后,判断是否为Spam账号就更有底气一些。根据经验,因为Spam账号大批量注册,大部分都没有精力对个人资料进行精心设置,因此无意义字符、有规律性的内容就是判断是否为Spam账号的主要依据。但根据注册信息来判断仍然是推测,实际操作过程中阻碍较多。
3.行为内容
前面两个步骤的防范都是推测是否为Spam账号,更有说服力的依据是用户行为内容,识别标准根据各个场景而不同。在反垃圾场景中,发布垃圾内容的自然是垃圾信息。在反作弊场景中,刷票、批量投票等行为,也可以理解为Spam账号。
在谈如何应对之前,我们先来梳理移动端APP可能遇到哪些作弊风险。
1. 渠道商刷量,伪造大批下载量和装机量,但没有新用户注册。
2. 对于电商、P2P、外卖等平台,会面临散户或者团队刷子的注册->领券(参加活动)->利用平台规则获利或变现。
3. 对于UGC社区或带有UGC属性的其他类型社区,会面临各种Spam账号注册后,在社区内发大量广告进行引流的风险。
应对作弊的方案针对风险的不同会略有不同。
1. 对于刷量作弊,反作弊核心在于是否存在使用模拟器安装APP,反复安装APP的情况,对于这类作弊,收集数据提取相关证明即可。
2. 对于电商等平台类的作弊,需要有三种途径分别解决:
a) 【技术层面】检测是否有模拟器,设备是否处于可以被篡改机器特征(尝试破解设备指纹)的环境中,检测网络特征是否位于同一网络环境下。
b) 【业务层面】需要在注册、登陆、重点被刷的活动上分别布防,以设备指纹为基础,检测是否存在类似于设备注册/登录多账号类的高频特征,对账号进行打标,在后续的关键节点中再对账号进行处理,尽量避免和刷手进行面对面的攻防对抗。
c) 【活动层面】分析历史作弊数据,优化活动奖励。对于作弊的流量,采用堵不如疏的策略,与其强硬的一刀切,不如提升攻击成本,减少获利。
3. UGC社区与电商平台类似,UGC社区同样需要技术层面和业务层面的检测。另外为了对抗大量的人工和手工刷手,需要增加文本内容方面的反垃圾。
以上是盾盾对于解决移动端虚拟机注册等作弊行为的方法解读,如果你有任何网络安全方面的问题想要咨询,欢迎给盾盾留言,入选问题将会在question栏目中进行定期解答。
相关文章:
【推荐】 后台服务项目的白盒测试之旅
【推荐】 初识Continuation
【推荐】 微服务化的数据库设计与读写分离
Question | 移动端虚拟机注册等作弊行为的破解之道的更多相关文章
- 如何在 vCenter Server 上将虚拟机注册或添加到清单中
免责声明:本文为 Registering or adding a virtual machine to the Inventory in vCenter Server or in an ESX/E ...
- Netty服务端Channel注册Selector及绑定服务器端口
当服务端Channel 创建并且初始化完成之后,会将其注册到 selector,通过语句config().group().register(channel)进行注册工作,该方法最终调用 Abstrac ...
- 向虚拟机注册钩子,实现Bean对象的初始化和销毁方法
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 有什么方式,能给代码留条活路? 有人说:人人都是产品经理,那你知道吗,人人也都可以是 ...
- Taurus.MVC 微服务框架 入门开发教程:项目集成:1、服务端:注册中心、网关(提供可运行程序下载)。
系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...
- 对于移动端 App,虚拟机注册或类似作弊行为有何应对良策?
1.APP攻击大致策略 对APP进行攻击的一般思路包括反编译APP代码.破解APP通讯协议.安装虚拟机自动化模拟: a.首先看能否反编译APP代码(例如Android APP),如果能够反编译,从代码 ...
- Spring Cloud(2)A Eureka server端 服务注册建立
1. 父项目pom <dependency> <groupId>org.springframework.cloud</groupId> <artifactId ...
- zabbix server端自动发现和zabbix agent端自动注册
一.zabbix自动发现 利用zabbix的discovery功能可以实现自动批量添加主机的功能. Zabbix自动发现实现自定义主机名: 通过自动发现添加的客户端主机的Host name 是以IP地 ...
- 四、eureka服务端同步注册操作
所有文章 https://www.cnblogs.com/lay2017/p/11908715.html 正文 在eureka服务端注册服务一文中,我们提到register方法做了两件事 1)注册服务 ...
- Spring Cloud Eureka 之服务端自我注册
Eureka服务端实现了一种自我注册机制,涉及配置项: eureka.client.register-with-eureka spring.application.name Eureka Server ...
随机推荐
- Java基础:(五)Object通用方法
一.Object对象的九个方法 getClass():hashCode():equals():clone():toString():notify():notifyAll():wait():finali ...
- Seven Deadly Sins: Gluttony, Greed, Sloth, Wrath, Pride, Lust, and Envy.
Seven Deadly Sins: Gluttony, Greed, Sloth, Wrath, Pride, Lust, and Envy.七宗罪:暴食.贪婪.懒惰.暴怒.傲慢.色欲.妒忌.
- div嵌套时,子元素设置margin-top失效问题
这是因为父元素的padding设置为0时所产生的bug,它自动将margin-top提升到了父元素上,所以此时我们所设置的margin-top自动就到父元素上了,解决方案: 1.给父元素添加一个pad ...
- mui页面间传接值例子
传值页面index.html <!DOCTYPE html><html><head> <meta charset="utf-8"> ...
- JFinal视频教程
最近开始录制JFinal视频教程,发布在腾讯课堂上,免费公开面向JFinal开发者,作为JFinal开发者入门学习.实际项目用遇到问题寻找解决方案的最好途径. 目前JFinal课程已经开始更新. 腾讯 ...
- python+selenium之多表单切换
在Web应用中经常会遇到fram/iframe表单嵌套页面的应用,WebDriver只能在一个页面上对元素识别与定位,对于fram/iframe表单内嵌套页面上的元素无法直接定位.这是需要通过swit ...
- html 之table标签结构学习
一.HTML table标签结构 html 中table标签的结构情况,如下所示: <!-- table标签结构如下: <table> <thead> # thead表格 ...
- pc端常见布局样式总结(针对常见的)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 用NPOI操作EXCEL-锁定列CreateFreezePane()
public void ExportPermissionRoleData(string search, int roleStatus) { var workbook = new HSSFWorkboo ...
- Servlet中的属性(attribute)和参数(parameter)的区别
1.引子 初学者对属性(attribute)和参数(parameter)容易搞混.没搞清他们的区别,项目中就可能出现一此莫名其妙的问题. 2.两者的区别 1) 属性(attribute) 属性是在后台 ...