去除摇一摇功能(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

相关文章

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

Java CompletableFuture如何实现超时功能

《JavaCompletableFuture如何实现超时功能》:本文主要介绍实现超时功能的基本思路以及CompletableFuture(之后简称CF)是如何通过代码实现超时功能的,需要的... 目录基本思路CompletableFuture 的实现1. 基本实现流程2. 静态条件分析3. 内存泄露 bug

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

SpringBoot使用Apache Tika检测敏感信息

《SpringBoot使用ApacheTika检测敏感信息》ApacheTika是一个功能强大的内容分析工具,它能够从多种文件格式中提取文本、元数据以及其他结构化信息,下面我们来看看如何使用Ap... 目录Tika 主要特性1. 多格式支持2. 自动文件类型检测3. 文本和元数据提取4. 支持 OCR(光学

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用

最好用的WPF加载动画功能

《最好用的WPF加载动画功能》当开发应用程序时,提供良好的用户体验(UX)是至关重要的,加载动画作为一种有效的沟通工具,它不仅能告知用户系统正在工作,还能够通过视觉上的吸引力来增强整体用户体验,本文给... 目录前言需求分析高级用法综合案例总结最后前言当开发应用程序时,提供良好的用户体验(UX)是至关重要