| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> UNcrackable-Level1绕过root检测 -> 正文阅读 |
|
[开发工具]UNcrackable-Level1绕过root检测 |
工具下载链接:JEB反编译:JEB Decompiler by PNF Software 官方版本,官方demo版功能会受限,需要使用pro版,但是需要money,所以想办法整吧。 切记,jeb在中文目录下不能正常启动,会报错,如下: Visual Studio Code:Visual Studio Code - Code Editing. Redefined 测试软件:UNcrackable-Level1.apk:https://github.com/OWASP/owasp-mstg 路径: 签名软件:apk签名工具(dodo APKSign)下载_apk签名工具(dodo APKSign)官方下载-太平洋下载中心 还需要下载模拟器 打包好的软件:复制本段内容,打开「阿里云盘」APP ,链接:https://www.aliyundrive.com/s/BGYGmU2KdeT 0x01 模拟器安装软件在模拟中安装Uncrackable1.apk,然后打开。 提示该应用不能在root环境下运行,点击ok后退出,说明应用会检测当前环境是否是root权限。那么如何绕过root检测。 0x02 Jeb反编译分析软件代码
可以直接将Uncrackable1.apk拖到jeb_wincon.bat上就可以打开软件进行反编译等操作,也可以双击jeb_wincon.bat,然后打开jeb软件,再打开Uncrackable1.apk进行相关操作。
2. 我们先查看androidmainfest.xml文件,寻找程序的入口,即首页,这里是Mainfest文件,双击Mainfest文件打开,可以看到,这里程序的入口是MainActivity 3. 然后打开MainActivity,打开后是反汇编界面,按下TEB键,会进行反编译操作。 4. 结合进入软件时的界面与代码进行分析,可以看到代码进行了root检测。分别调用了a(),b(),c()函数,只要有一个检测成功,就会提示“Root detected”。(||表示或) 5. 我们双击a()函数,进行跟踪,看到a(),b(),c()三个函数的内容。 解读: a(): 获取环境变量然后进行分隔,将获取的环境变量获取出来进行拼接,检查是否有su存在。root下,环境变量有su存在。 b(): 检测TAGS里面是否有test-keys.在安卓中。做开发调试的时候,是可以把root烧进去的,而release版本的时候通常会把root删掉。检测是否是在模拟器中运行或者开发人员自己build的模拟器,自己build的通常会带test-keys。 c():检测一些常见的文件路径是否存在。 然后双击b.a(this.getxxxxxx)中的a a(Context arg0):检查flag是否是2,具体原因不清楚。 0x03 解包修改软件
先使用apktool对Uncrackable1.apk进行反编译,命令:
双击打开smali——uncrackable1——MainActivity.smali 通过与jeb中的代码对比,找出需要删除的部分: 删除后效果
然后会在 UnCrackable-Level1——dist目录下生成新的apk 0x04 软件签名1. 对app包进行签名,APK文件不签名是无法进行安装的。 打开Dodo APKsign,选择需要制作签名的apk以及签名文件保存的目录,然后制作签名。 2. 制作成功后,卸载原app然后安转篡改后的app,成功绕过root检测。 0x06 总结第一次做逆向分析,总的来说不是很难,在搜集软件上花费了很多时间,尤其是jeb,换了好几个版本才行,这个过程中发现demo版本代码反编译不全,故只能使用pro版本。 小白路过,大神勿喷,欢迎斧正。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/14 15:09:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |