34.安卓逆向-壳-frida-Dexdump脱壳

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于:图灵Python学院

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:33.安卓逆向-壳-查壳

上一个内容里写了如何查询app文件是否加壳,本次来写怎样去砸壳(或者说是脱壳)

有一个工具叫做frida-Dexdump,常规的壳它没有问题,它通过frida的搜索内容,通过匹配dex文件的特征,例如dex文件的文件头中的magic---dex.035这个特征

脱壳原理

一个app被加固了,然后如果想让app正常运行,它肯定要把app原本的代码放到内存里,也就是说app启动的时候会先运行脱壳的代码,然后把dex源码文件加载到内存里,也就是说内存里会有app的源码,如果原本的代码加完壳之后找不到了那么app也没法正常运行,然后app加固只是把dex源码文件放到别的地方了,并不是没有了,所以frida-Dexdump就是利用这种方式来对app进行脱壳

frida-Dexdump官网地址:https://github.com/hluwa/FRIDA-DEXDump

下载有两种方式,第一种,把下图红框的文件全部下载下来

第二种使用pip命令下载

第一种方式下载完,如下图红框requirements.txt文件里的是它需要的东西,比如没有frida-tools就要手动安装一下,没有安装click也要手动安装一下,总之要确保requirements.txt文件里的东西都已经安装了,否侧会没法使用

pip命令进行安装,如下图

然后把手机上的Frida运行起来,然后来到下载frida-dexdump的目录里,如下图

然后在此目录打开cmd

然后输入 python .\frida_dexdump\ -FU 表示把当前手机里显示的app进行破解,如下图

它会把源码文件放到如下图红框位置,也就是在frida-dexdump安装位置根据app的包名创建一个文件夹,然后把源码文件放进去

如下图源码文件,然后这些文件可以直接放到 jadx-gui 里进行查看,但要注意它非常占用内存,如果电脑内存不够大,可能会因为内存满了变卡或死机,所以肯定有一种不用担心内存满的方式

通过搜索先找到app的入口方法,有一个GDA4的工具

GDA4下载地址:http://www.gda.wiki:9090/

打开GDA4之后,把apk文件拖到GDA4里,然后看BaseInfo,就能找到入口了如下图2位置的红框就是入口

找到入口之后打开Windows的shell,如下图红框的东西

然后输入 findstr /s /i /m "GDA4里找到的入口" *,如下图红框它就可以找到入口相关的dex源码文件,把这集个文件分别拖到jadx-gui里,findstr 指令只能在 Windows PowerShell里使用(cmd可能没法用)

如下图通过这种一点一点的找源码文件的方式看源码


img

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值