去除摇一摇功能(hook技术)破解防模拟器检测

2023-10-19 15:30

本文主要是介绍去除摇一摇功能(hook技术)破解防模拟器检测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

某某社区摇一摇功能

App入口为:com.qufan.vp. module. LaunchActivity
思路:首次安装APP会进入一个引导页面和摇一摇检测页面,检测过后在本地产生一个Code,然后第二进入时候会找到这个code进行对比,如果检测code有数据则直接跳转到Login界面。我们要做的就是找到这个Code的判断,进行直接跳过摇一摇检测页面和引导页面。

GuideActivity.smali 为引导页面
LaunchActivity.smali 为入口页面
LoginActivity.smali 为登陆页面
在这里插入图片描述
此处判断检测是否进入引导页面还是登陆页面

修改 为:
Java代码:

    private void m() {if (d.a() > ai.a().c("version", 0)) {x.b(this, LoginActivity.class, n());} else {x.b(this, LoginActivity.class, n());}
}

Smali代码:

 .method private m()V.locals 3.prologue.line 353invoke-static {}, Lcom/qufan/vp/utils/ai;->a()Lcom/qufan/vp/utils/ai;move-result-object v0const-string v1, "version"const/4 v2, 0x0invoke-virtual {v0, v1, v2}, Lcom/qufan/vp/utils/ai;->c(Ljava/lang/String;I)Imove-result v0.line 354invoke-static {}, Lcom/qufan/vp/utils/d;->a()Imove-result v1if-le v1, v0, :cond_0.line 355const-class v0, Lcom/qufan/vp/module/account/module/login/LoginActivity;invoke-direct {p0}, Lcom/qufan/vp/module/LaunchActivity;->n()Landroid/os/Bundle;move-result-object v1invoke-static {p0, v0, v1}, Lcom/qufan/vp/utils/x;->b(Landroid/content/Context;Ljava/lang/Class;Landroid/os/Bundle;)V.line 367:goto_0return-void.line 364:cond_0const-class v0, Lcom/qufan/vp/module/account/module/login/LoginActivity;invoke-direct {p0}, Lcom/qufan/vp/module/LaunchActivity;->n()Landroid/os/Bundle;move-result-object v1invoke-static {p0, v0, v1}, Lcom/qufan/vp/utils/x;->b(Landroid/content/Context;Ljava/lang/Class;Landroid/os/Bundle;)Vgoto :goto_0
.end method

主要修改位置

在这里插入图片描述
去除模拟器检测功能
搜索关键词 mulator 找到一下几个
在这里插入图片描述
推测应该是向服务器发送请求然后返回判断是否是模拟器,服务器回应然后开始传送数据,是模拟器限制登陆,不是模拟器登陆成功
找到这个smali查看内容
在这里插入图片描述
这个地方应该是把设备型号等信息 还有判断是否模拟器true 或者 false 给treeMap数组
然后这个地方

在这里插入图片描述
就是请求服务器数据 进行加密发送
因为这个APP 是点击登陆或者注册按钮是提示模拟器 那可以看看这个包名是否在登陆或者注册页面加载这个包名

这个包名为:com.qufan.vp.core.net.http.retrofit.http
查找这个包名是否在注册或者登陆包名引用com.qufan.vp.core.net.http.retrofit.http

在这里插入图片描述
的确引入这个包名了 然后就是查看

在这里插入图片描述
的 EmulatorDetectUtil.a来源哪里
查找EmulatorDetectUtil.a

在这里插入图片描述
在这里插入图片描述
这里返回了一个boolean a的值 就是判断true或者false 这里调用了emulator_check 然后应该返回的就是一个判断值
我们手动修改return detect()的值 true=是模拟器 false=不是模拟器

我们直接 返回一个false 给boolean a

把return detect();改为

Detect();
Return false;

在这里插入图片描述
Smali代码如下:
在这里插入图片描述
修改完之后测试没问题 去除摇一摇检测 去除模拟器检测 成功。

此文章直供学习使用,仅供参考,禁止非法使用。

这篇关于去除摇一摇功能(hook技术)破解防模拟器检测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/240696

相关文章

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Golang如何用gorm实现分页的功能

《Golang如何用gorm实现分页的功能》:本文主要介绍Golang如何用gorm实现分页的功能方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景go库下载初始化数据【1】建表【2】插入数据【3】查看数据4、代码示例【1】gorm结构体定义【2】分页结构体