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 ...
随机推荐
- 使用history.replaceState 修改url 不跳转
history.replaceState(null,null,this.urlR); //关键代码 history.replaceState是将指定的URL替换当前的URL 注意:用于替换掉的URL ...
- Kendo UI 移动应用开发简介
Kendo UI 移动应用开发简介 Kendo UI 支持开发 Web 应用,前面介绍的 SPA,也支持开发移动应用,至于使用 HTML5 + JavaScript + CSS 开发移动是不是一个好的 ...
- Spring的DI(Dependency Injection)
写在之前,作为正在学习的程序员,对于Spring理解比较差,给两个简单的定义大家看一下. 控制反转(Inversion of Control),是一个重要的面向对象编程的法则来削减计算机程序的耦合问题 ...
- 【机器学习实战】第2章 K-近邻算法(k-NearestNeighbor,KNN)
第2章 k-近邻算法 KNN 概述 k-近邻(kNN, k-NearestNeighbor)算法主要是用来进行分类的. KNN 场景 电影可以按照题材分类,那么如何区分 动作片 和 爱情片 呢? 动作 ...
- python3.6 配置COCO API出错解决方案
使用Anaconda Prompt进行安装 问题出现的背景:在尝试使用mask-rcnn时,遇到了这个问题,最终解决掉了
- iOS快速开发框架--Bee Framework
Bee Framework是一款iOS快速开发框架,允许开发者使用Objective-C和XML/CSS来进行iPhone和iPad开发,由 Gavin Kwoe 和 QFish 开发并维护. 其早期 ...
- HTML5<figure>元素
HTML5<figure>元素是用来定义页面文档中独立的流内容(图像,图表,照片,代码块),figure内容与主内容有关,如果被删除,则不影响主文档流的产生. HTML5<figca ...
- 2d游戏中的射线与矩形检测碰撞
cc.exports.LineCollideRect(startLine,endLine,rect)--向量与矩形检测碰撞 --获取矩形的四个顶点位置 local p = {cc.p(rect.x,r ...
- 代码块(block)的使用
Objective-C语法之代码块(block)的使用 代码块本质上是和其他变量类似.不同的是,代码块存储的数据是一个函数体.使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值. 脱 ...
- 【转】BP神经网络
学习是神经网络一种最重要也最令人注目的特点.在神经网络的发展进程中,学习算法的研究有着十分重要的地位.目前,人们所提出的神经网络模型都是和学习算 法相应的.所以,有时人们并不去祈求对模型和算法进行严格 ...