天天看点

听鬼哥说ZJDROID脱壳的简单使用

源码作者:jiazhijun

源码地址:https://github.com/BaiduSecurityLabs/ZjDroid

简易测试:听鬼哥说故事

测试手机:小米1s,root,装有Xposed 框架

测试软件:陌陌5.0

作者已经写好了使用步骤,不过好多朋友还是没法正常使用此神器,于是在此简单写一下使用过程,配上图片,方便大家重新了解此神器的使用。

那么我们就从头开始讲吧,详细一点了:

第一步:相关软件的安装准备

①.xposed框架

附件名称:de.robv.android.xposed.installer_v32_de4f0d.apk

进入软件,选择框架进行安装/更新操作

如安装提示问题,一般是空间不够,找个系统没用的apk,如音乐播放器之类的,直接删除掉,留出安装框架的空间。

听鬼哥说ZJDROID脱壳的简单使用

②.模板的安装(ZjDroid.apk)

附件名称:ZjDroid.apk

软件安装成功后,点击xposed这个软件中,模块选项:

然后,点上后面的对勾,会有提示重启激活

听鬼哥说ZJDROID脱壳的简单使用

③.激活软件(重启激活)

手机进行重启,会自动激活。

相关下载地址如下:

链接:http://pan.baidu.com/s/1dDow01N 密码:95xf

第二步:查看测试环境是否正常

我们安装一个进行梆梆加固的软件,省时间,直接用陌陌的。

按照如下图简单配置一下DDMS的打印信息,方便查看:

听鬼哥说ZJDROID脱壳的简单使用

前面zjdroid-shell-是固定字符串,读者可以在源码中查看得到,后面的是需要测试的软件的包名。

安装完成后,我们打开软件,然后查看一下Log日志,如果有以下打印,则证明我们环境准备正常,然后可以开始下一步的操作。有问题的,一般只要是手机问题,可以更换手机测试一下。

听鬼哥说ZJDROID脱壳的简单使用

第三步:开始查看dex相关信息

上一步的操作成功后,直接可以看到hook的target id ,这个时候我们需要记录一下这个id,后面是需要使用的。

在shell下直接使用am命令,其中target 使用上面我们hook的id即可,如下图:

听鬼哥说ZJDROID脱壳的简单使用

执行到这里后,我们查看ddms信息

听鬼哥说ZJDROID脱壳的简单使用

红色标注的,是我们需要的地址,下一步使用

第四步:简单查看class信息,看是否是解密后的dex

记录下上一步的地址信息(梆梆的,一般都是在.cacha下面)。

我们执行下面一行代码,查看class信息,看是否是解密后的

听鬼哥说ZJDROID脱壳的简单使用
听鬼哥说ZJDROID脱壳的简单使用

上下翻一下log,都能找到momo启动的主类,说明是正常的。

第五步:进行baksmali来dump出来dex

此过程时间根据软件大小,时间会比较长,耐心等待即可

然后我们就开始准备dump信息了,如下图:

听鬼哥说ZJDROID脱壳的简单使用

开始标志:

听鬼哥说ZJDROID脱壳的简单使用

结束标志:

听鬼哥说ZJDROID脱壳的简单使用

然后从对应位置导出来即可,然后对dex的操作不再多说,如下图看一下即可:

听鬼哥说ZJDROID脱壳的简单使用

感谢作者的无私指导,虽然是周末,但是在提出bug后,积极与本人沟通,然后进行修正测试,此版本的ZJDroid.apk只是简单的测试版本,相对源码,修复了几条bug,等待作者更新源码对比查看即可。

建议,如果对一个软件多次dump,需要清空files下的内容,否则可能因为文件已存在,无法正常操作。

当然,有能力的朋友,可以更好的去优化此源码。

在攻与防的过程中,相互成长。。。

听鬼哥说故事

7.28

继续阅读