最近app在推广过程中发现有大量的用户使用小号来领取邀请奖励,而小号的操作往往是利用多开软件开启应用分身来登录。为此,我需要区分出本体和克隆体。

当今市面上流行的分身主要有三类

1.修改Framework

手机厂商实现的分身功能就是用这种方式实现的

检测方案:手上有个小米测试机,正好自带分身,通过getFileDir()的api试了下,在本体得到的是data/data/com.xxx.xxx/files,克隆体得到的是data/user/10/com.xxx.xxx/files

2.修改apk

通过反编译apk,修改apk包名、签名等将apk伪装成另外一个app。市面上常见的第三方多开app大部分都是使用的这种技术。其特点是每次制作一个分身都需要时间拷贝、并且在应用列表中可以看到

检测方案:
跟上面一样,可以用getFileDir()来检测,只不过一个是data/data/com.xxx.xxx/files,另一个是data/data/com.xyz.xyz/files

3.虚拟操作系统

虚拟一个操作系统,克隆体app在这个虚拟系统中运行,在应用列表不可见,代表产品:360分身大师

检测方案:
这个据说是唯一一种绕过getFileDir()的分身方式,确实这种方式让我耗费了很长时间,下面以360的分身大师举例,详细说下分析过程

  1. 首先通过getFileDir()尝试,本体和克隆体输出一致。失败!!
  2. 通过在本体和克隆体登录不同账号获取SP中存储的账号信息,确定获取的信息不同,证明存储位置不一致
  3. 通过文件管理器查看最近修改的文件,发现系统根目录下有一个docker的文件夹,里面包含了跟根目录类似的结构,在其里面的Android/data下就会发现我们自己的包名,分身的本地数据就存放在这里。
  4. 找到分身的本地存储后,本想向其中存储数据用来标记是否为分身,但本体运行时报了一个无权限写入的异常,因此改为了判断当前是否有对该目录的写入权限

PS:据说“平行空间”原理和“360分身大师”相同,经测试发现通过getDirFile()就可以判断出来,至此,分身检测基本完成

Android应用分身检测相关推荐

  1. android 程序分身,Android应用分身检测

    最近app在推广过程中发现有大量的用户使用小号来领取邀请奖励,而小号的操作往往是利用多开软件开启应用分身来登录.为此,我需要区分出本体和克隆体. 当今市面上流行的分身主要有三类 1.修改Framewo ...

  2. android 绕过root检测,公主连结怎么绕过root检测 绕过root检测方法一览

    公主连结刷初始怎么绕过root检测呢?很多小伙伴想刷初始可是经常被root检测,有没有什么办法才能绕过检测呢? 实机可以用magisk自带的hide功能,xposed框架可以选择rootcloak,A ...

  3. 算法移植优化(三)android dlib 人脸检测使用

    android dlib 人脸检测使用 一.编译阶段 1.在cmakelist.txt中加入: include(src/main/cpp/dlib/cmake) 然后再链接dlib库就可以了: tar ...

  4. Android内存泄漏检测工具使用手册

    Android内存泄漏检测工具使用手册 前言 LeakCanary 在Android中接入LeakCanary LeakCanary内存泄漏分析 内存泄漏上报到服务端 Shark Shark分析当前应 ...

  5. [免费专栏] Android安全之检测APK中调试代码是否暴露敏感信息

    也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大 少走了弯路,也就错过了风景,无论如何,感谢经历 Android安全付费专栏长期更新,本篇最新内容请前往: [ ...

  6. Android基础性能检测与分析

    本文内容:基于Android基础性能检测与分析 版权声明:本文为原创文章,未经允许不得转载 博客地址:http://blog.csdn.net/kevindgk 前言 UI性能分析 应用启动时间计算以 ...

  7. Android应用安全检测工具简介

    Android应用安全检测工具简介 1.测试工具集 Appie – 轻量级的软件包, 可以用来进行基于Android的渗透测试, 不想使用VM的时候可以尝试一下. Android Tamer – 可以 ...

  8. Android模拟器识别检测技术

    Android模拟器识别检测技术 Android模拟器常常被用来刷单,如何准确的识别模拟器成为App开发中的一个重要模块,目前也有专门的公司提供相应的SDK供开发者识别模拟器. 目前流行的Androi ...

  9. android检测张嘴眨眼,Android/IOS 活体检测(眨眼,摇头,点头,张嘴,远近)

    更新记录 1.1.2(2021-05-24) ios优化活体算法 1.1.1(2021-05-17) v1.1.1_release(2020.05.14) 添加框的绘制 在计算人脸关键点变化的过程上加 ...

最新文章

  1. Nginx映射本地json文件,配置解决浏览器跨域问题,提供前端get请求模拟数据
  2. python 流式编程_python 使用yield进行数据的流式处理
  3. AAAI 2018论文解读 | 基于文档级问答任务的新注意力模型
  4. C++反转字符串的算法(附完整源码)
  5. mysql 英文占几个字符_MySQL 数据库 varchar 到底可以存多少个汉字,多少个英文呢?我们来搞搞清楚...
  6. java多线程机制计时器_java多线程定时器与单例模式
  7. 接入gitment为hexo添加评论功能
  8. sjtu 1077 加分二叉树
  9. 转载:给自己一个警示
  10. vs2015 安装破解版Visual Assist X
  11. 当人工智能遇上医疗影像,你不得不知道这13家影像AI公司
  12. 新西兰八大名校--新西兰公立大学
  13. 鲸会务会议管理系统线上会议邀约、推广、获客、互动一站式解决方案
  14. 插入U盘后 计算机未响应,电脑插入U盘后没有反应怎么办?
  15. 【Linux 从入门到精通】第一篇 常见指令及初识权限
  16. LyX使用小记之三 公式编辑
  17. 将oracle数据库中的数据导入redis数据库演示
  18. SEO优化,4个独辟蹊径的策略
  19. golang实现捧腹网爬取笑话
  20. 引导图滤波(Guided Image Filtering)原理以及OpenCV实现

热门文章

  1. 服务器配置(IIS服务器安装)
  2. 什么邮箱发送邮件不进垃圾箱,邮件进垃圾箱了是什么原因怎么办?
  3. C语言实现文件的局部修改,C语言:在文件的指定位置实现局部修改,而无需重写文件的其他部分...
  4. 微软谷歌苹果耳机大战 智能竞赛的又一战场
  5. 【深度强化学习】GAIL 与 IRL 的理解
  6. 功率半导体的正负温度系数
  7. ONES 联合中国信通院发布《中国企业软件研发管理白皮书》
  8. 初学者入门网络安全学哪种编程语言好?
  9. 贪心算法 Greedy
  10. NSG44273低侧驱动IC