Frida-Dexdump 脱壳工具下载使用以及相关技术介绍

Frida-Dexdump 脱壳工具下载使用以及相关技术介绍



前言

本案例使用的App是:引力播.apk,涉及到查壳、脱壳、反编译;


提示:以下是本篇文章正文内容,下面案例可供参考

一、查壳、反编译、APK工具推荐

ApkScan-PKID 查壳工具下载使用:https://blog.csdn.net/EXIxiaozhou/article/details/127196615
JDAX-GUI 反编译工具下载使用:https://blog.csdn.net/EXIxiaozhou/article/details/127207762
Apk下载地址:https://pan.baidu.com/s/1QG-koXGFc4bYBKoAIjNnYw?pwd=2vx6

二、查壳

1.方式1

将apk拖入查壳工具后提示为:《360》加固则为有壳,需要脱壳之后才能进行反编译,没壳可以直接反编译;
在这里插入图片描述

2.方式二

修改apk的后缀为zip,进行解压,查看解压后的文件下的lib目录,博主推荐第一种方式;
在这里插入图片描述
在这里插入图片描述
不同的公司,有不同的加壳方式,常见的如下

公司名称 对应的壳包名
爱加密 libexec.so,libexecmain.so,ijiami.dat
梆梆 libsecexe.so,libsecmain.so , libDexHelper.so libSecShell.so
360 libprotectClass.so,libjiagu.so,libjiagu_art.so,libjiagu_x86.so
百度 libbaiduprotect.so
腾讯 libshellx-2.10.6.0.so,libBugly.so,libtup.so, libexec.so,libshell.so,stub_tengxun
网易易盾 libnesec.so

三、脱壳

1.启动frida服务

1、打开需要脱壳的app,启动frida服务
JS逆向 Frida - 夜神模拟器安装配置 基本使用:https://blog.csdn.net/EXIxiaozhou/article/details/128035059
来到windows本地的模拟器安装目录下:xxx/Nox/bin,在搜索框输入cmd进入该目录的命令窗口
在这里插入图片描述
1.进入shell:adb shell
2.获取权限:su
3.进入目录:cd /data/local/tmp
4.设置frida-server可执行权限:chmod 755 frida-server-12.8.0-android-x86
5.启动服务:./frida-server-12.8.0-android-x86
在这里插入图片描述
2、查看模拟器正在运行的程序:frida-ps -Ua,注意标红框的包名(等会脱壳需要输入)
在这里插入图片描述

2.方式一

下载frida-dexdump开源项目进行脱壳
FRIDA-DEXDump下载Github:https://github.com/hluwa/frida-dexdump
FRIDA-DEXDump 下载百度网盘:https://pan.baidu.com/s/1XONAyViTbOm99R05BF6DHQ?pwd=coyd
1、解压即可使用,打开xxx\frida-dexdump-2.0.1\frida_dexdump目录,在搜索框输入cmd,进入命令窗口
在这里插入图片描述
2、输入frida-dexdump -U -f com.iCitySuzhou.suzhou001,开始脱壳;
包名指:(frida-ps -Ua)的红色箭头处右侧的App应用程序包名
在这里插入图片描述
关于脱壳命令:

  • 指定App的应用名称:frida-dexdump -U -n 保利票务
  • 指定App的应用进程ID:frida-dexdump -U -p 3302
  • 指定App的应用包名:frida-dexdump -U -f com.iCitySuzhou.suzhou001

在这里插入图片描述
3、会在xxx\frida-dexdump-2.0.1\frida_dexdump的同级目录根据app包名生产一个文件夹(包含脱壳生成的dex文件)
在这里插入图片描述

3.方式二

镜像地址

  • 清华:https://pypi.tuna.tsinghua.edu.cn/simple
  • 阿里云:http://mirrors.aliyun.com/pypi/simple/
  • 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
  • 华中理工大学:http://pypi.hustunique.com/
  • 山东理工大学:http://pypi.sdutlinux.org/
  • 豆瓣:http://pypi.douban.com/simple/

1、安装frida-dexdump:pip install frida-dexdump -i https://pypi.tuna.tsinghua.edu.cn/simple
在这里插入图片描述
2、cmd打开一个命令窗口,进入python环境的安装目录xxx\Python37\Scripts,定位到 frida-dexdump 命令的目录
在这里插入图片描述
3、复制红色箭头处右侧的App应用程序包名,为后续的frida脱壳命令做准备
在这里插入图片描述
4、在xxx\Python37\Scripts目录,输入:frida-dexdump -U -f com.iCitySuzhou.suzhou001,开始脱壳
关于脱壳命令:

  • 指定App的应用名称:frida-dexdump -U -n 保利票务
  • 指定App的应用进程ID:frida-dexdump -U -p 3302
  • 指定App的应用包名:frida-dexdump -U -f com.iCitySuzhou.suzhou001

在这里插入图片描述
5、会在xxx\Python37\Scriptsp的同级目录根据app包名生产一个文件夹(包含脱壳生成的dex文件)
在这里插入图片描述

四、反编译

将dex按照大小排序,同时将多个dex 的脚本拉入jadx窗口(可以删除最小的几个dex文件,如果分析的时候觉得内容不全,只删除最小的dex文件)
在这里插入图片描述
反编译完成
在这里插入图片描述
这里记录一个关于dex文件打开错误的问题,jadx.plugins.input.dex.DexException: Bad checksum
在这里插入图片描述
解决方案
在文件->首选项中找到[dex-input]verify dex file checksum before load,选择否即可,即关闭校验
在这里插入图片描述


总结

以上就是今天要讲的内容,本文仅仅简单介绍了Frida-Dexdump 的使用,关于具体的案例请查看我的其他博文;

猜你喜欢

转载自blog.csdn.net/EXIxiaozhou/article/details/128208068