用户
搜索

该用户从未签到

版主

推荐组组员(最帅的那个)

Rank: 7Rank: 7Rank: 7

33

主题

46

帖子

367

魔法币
收听
0
粉丝
1
注册时间
2018-4-12

i春秋推荐小组

Arizona 版主 推荐组组员(最帅的那个) i春秋推荐小组 楼主
发表于 2018-7-3 15:06:15 310099

如何绕过android应用程序中的模拟器检测

逆向工程
andriod

介绍

在模拟器上测试一些android应用程序时,它总会显示应用程序与CPU不兼容,或者在模拟器上安装应用程序时会出现一些错误

我会告诉你如何轻松绕过

留意

这可能不适用于某些应用程序,你将不得不使用另外一种技术......这只是常见的方式......很聪明

准备

好吧,现在你应该使用(jadx或jd-gui)和smali字节代码(apktool)将你的android应用反编译为源代码

开始

首先,您需要检查预先反编译的源代码并检查包含“generic |”emulated| google_sdk“例如”isEmulator的函数 |“ emulatedDetection...等“...使用您的搜索技巧,并阅读代码

正如你所看到的,有一种叫做“checkIfDeviceIsEmulator”的方法来检查“finger print |” model| brand“和像”genymotion |emulated”的模拟器</br>
如果您注意到...如果此函数检测到仿真器,则返回true语句,如果不是仿真器,则返回false:

好吧,我认为你现在就明白了。

有趣的部分

现在我们应该将这些值从true更改为false,以绕过此检测...但我们无法编辑源代码......实际上,您不能再次重新编译和使用此源代码......但您可以在smali代码中执行此操作:

好吧,让我们做这个...

使用smali代码转到相同的文件名,然后搜索源代码中找到的相同字符串,直到获得行号

正如你向下滚动直到你得到这个指令(“const / 4 v0,0x1”)之前在源代码中看到的字符串,它意味着该方法返回真正的语句(以简单的方式解释它)......在smail
代码中小数字节代码中的十六进制值0x1表示真,所以我们将它从0x1更改为0x0

现在我们已经完成了,您可以重新编译smali字节代码,并在模拟器上测试应用程序。

你可以看看[这个视频]((https://youtu.be/y27pS6LVXc8),这对于你来说会更简单

确保你可以用其他方式完成它......我认为这是最简单的方法

有事尽管问我

Github:https://github.com/DevoOverkill9/24
谢谢,0v3rk!113r


作者:DevoOverkill
翻译:i春秋翻译小组-Neo
责任编辑:jishuzhain
翻译来源:https://0x00sec.org/t/how-to-bypass-emulator-detection-in-android-apps/6585

How to bypass emulator detection in android apps

发表于 2018-7-5 09:10:40
我以为可以绕过腾讯吃鸡游戏模拟器监测呢!
小白~~~
使用道具 举报 回复
发表于 2018-7-5 18:17:15
咋不在逆向版块投稿
逆向/破解/病毒分析板块  专属QQ交流群:496266893  群二维码

https://bbs.ichunqiu.com/forum-60-1.html
使用道具 举报 回复
感谢分享
使用道具 举报 回复
发新帖
您需要登录后才可以回帖 登录 | 立即注册