前提准备 手机模拟器(win优先选择雷电模拟器,不吃性能 Mac的话我选的夜神模拟器)2.MT管理器 3.BlackDex(32位或者64位,根据手机选)4.Android Sdk(至少包含pla
手机模拟器(win优先选择雷电模拟器,不吃性能 Mac的话我选的夜神模拟器)2.MT管理器 3.BlackDex(32位或者64位,根据手机选)4.Android Sdk(至少包含platfORM-tools) 5.frida-dexdump (电脑端) 6.frida-server(手机端)7.反编译工具(apktool、jadx),apktool反编译的话对于文件整理做的很好,将资源和代码很好的抽离归类了,jadx据说是反编译能力更强一点
这里主要讲一下脱壳过程:从GitHub上下载完 frida-dexdump 以及 frida-server
安装 frida-dexdump
pip install frida-dexdump
安装 frida-server
这个工具直接去 github 官方仓库下载即可,需要注意的是,frida-dexdump和frida-server的版本必须对应,否则后面运行服务会报错。
下载后解压,切换到工具所在目录,右键进入cmd,使用以下命令将frida-server安装到手机的tmp目录下
adb push frida-server /data/local/tmp/
你下载解压的工具全名叫啥,frida-server这个位置就换成你的工具名
开始脱壳(企业版加固的app大概率失败,所以也别抱希望)
-先打开模拟器,运行要脱壳的app
-在终端输入命令,验证是否检测到了模拟器
adb devices
-开启手机端frida-server服务
# 进入手机命令adb shell# 开启 shell 的 root 权限su# 进入 frida-server 目录(正常情况下都是这个目录)cd /data/local/tmp# 修改文件权限(不修改运行服务会失败)chmod 755 frida-server# 运行服务./frida-server# shell窗口不能关闭,关闭后服务就停止了!!!
-新开一个cmd窗口执行 frida-dexdump
# 输出进程列表frida-ps -U# 也可以是,这样会打印出进程id 进程名 以及包名frida-ps -Ua# 以进程 id 执行脱壳程序frida-dexdump -U -p 进程id# 以进程名执行脱壳程序frida-dexdump -U -n 进程名# 以包名执行脱壳程序frida-dexdump -U -f 包名
脱壳命令任选一种方式就行,dump出的dex文件在app包所在的同级目录下
将frida-dexdump这个软件dump出来的多个dex文件拖进jadx-gui中进行反编译或者是apktool中反编译,至此脱壳以及反编译就全部结束了。我猜测市面上大部分加固的apk使用开源的工具基本上都是不能脱壳的,所以为了便捷,可以先采用blackdex对apk进行脱壳,若脱壳失败大概率采用复杂的frida-dexdump也是会失败的。
来源地址:https://blog.csdn.net/qq_57443584/article/details/132732361
--结束END--
本文标题: 安卓apk逆向
本文链接: https://lsjlt.com/news/416608.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0