首页
社区
课程
招聘
[原创]逆向360加固等dex被隐藏的APK
发表于: 2015-3-5 17:41 90486

[原创]逆向360加固等dex被隐藏的APK

2015-3-5 17:41
90486

如果遇到apk中的lib文件夹中是这样的


基本没有dex文件可以反编译,这中的dex文件一般都是加密混淆压缩后放在so中啦。
但是软件要想运行就需要解出dex字节码然后加载到手机内存中,这样就可以在软件运行过程中把dex提取出来再使用相应的软件反编译成smail啦,接着就是转成java。
好啦,第一次发帖子,以下就是干货。

首先下载附件中的
gdb.7z.001.rar (2.00 MB)  
gdb.7z.002.rar (1.21 MB)
把这两个文件的后缀名去掉使用7zip解压出来二进制文件gdb (大约13MB)
打开安卓虚拟机,把需要逆向的加壳软件安装的虚拟机中,然后启动APK。

1、使用ADB把gdb push到手机中
adb push /home/down/gdb /data/local/tmp/gdb

2、找到需要逆向的apk对应linux的进程pid
adb 中执行
adb shell
top
会显示手机中全部的进程,然后找到进程名字为apk包名的pid (在此假设pid为 482)

3、赋予gdb权限(依次执行以下命令)
adb shell
su
cd /data/local/tmp/
chmod 777 gdb

4、dump进程482的内存
./gdb --pid 482
此时进入了gdb模式
这个时候输入 gcore 会dump到当前目录 /data/local/tmp/core.482
把这个core.482的文件放到安装了.net 3.5 的电脑上(win7默认是可以得)
比如放到以下位置
D:\core.482

5、下载附件中的 DumpAllDEX.7z 解压出文件 DumpAllDEX.exe
运行


就会把所有的dex文件提取到D:\core.482.dex 文件夹中。

6、逐个反编译提取出来的dex文件,直到找到你要逆向的软件dex。这个时候就可以开开心心的转成java看源码啦。

最近做了个微信公众号,要是有觉得这个文章有用的朋友,谢谢关注下呀



DumpAllDEX.exe 为C#写的,源码如下:


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 3
支持
分享
最新回复 (56)
雪    币: 341
活跃值: (143)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
2
来看看。。
2015-3-5 18:11
0
雪    币: 3412
活跃值: (3538)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
很强,收藏。
2015-3-5 18:50
0
雪    币: 546
活跃值: (1657)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
4
其实核心就是一条命令:gcore
2015-3-5 18:52
0
雪    币: 89
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
收藏,得空去尝试下,多谢分享。
2015-3-5 21:52
0
雪    币: 163
活跃值: (1623)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
6
这个gdb是否有做特殊处理,还是和系统一样?有些情况下gcore会出错。
DumpAllDex.exe不错
2015-3-5 22:59
0
雪    币: 19
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
不要使用真机gcore,用虚拟机试试
2015-3-6 09:31
0
雪    币: 18
活跃值: (430)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
8
不错 试试
2015-3-9 13:32
0
雪    币: 4
活跃值: (781)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
额 我没成功..
2015-3-11 11:05
0
雪    币: 1185
活跃值: (458)
能力值: ( LV13,RANK:360 )
在线值:
发帖
回帖
粉丝
10
可以用真机呀。。给力~谢谢分享。后面的脚本能自动化反编译就更nice了
2015-3-11 13:04
0
雪    币: 1185
活跃值: (458)
能力值: ( LV13,RANK:360 )
在线值:
发帖
回帖
粉丝
11
关键是gdb有做特殊处理么?能否指点一下呢?大大的Thanks
2015-3-11 13:06
0
雪    币: 1185
活跃值: (458)
能力值: ( LV13,RANK:360 )
在线值:
发帖
回帖
粉丝
12
是gcore不行就找中间的pid 继续gcore么?::
2015-3-11 13:07
0
雪    币: 249
活跃值: (250)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
mark
2015-3-11 20:25
0
雪    币: 232
活跃值: (1796)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
试了下,弄出来的dex好多smali文件的方法被隐藏了,得解密吧~
2015-3-11 20:45
0
雪    币: 25
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
最近有几天没学了,有点懈怠~
2015-3-12 14:00
0
雪    币: 268
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
mark
2015-3-17 06:38
0
雪    币: 14
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
很不错,收藏学习
2015-3-19 09:40
0
雪    币: 43
活跃值: (388)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
18
这内容并不多,集成起来不好?
还有就是有些情况内存里的DEX是不规范的,这就不好了
2015-3-20 21:33
0
雪    币: 44
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
尝试不成功,不知道哪里出问题了。谢谢楼主思路 。
2015-3-27 08:13
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
我也尝试了!也没有成功!
2015-3-27 13:34
0
雪    币: 217
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
好强.收藏一下.以后看.
2015-3-30 02:40
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
学习了!!谢谢楼主
2015-3-30 14:00
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
楼主,,gdb连接接不上咋办,
2015-4-1 12:24
0
雪    币: 20
活跃值: (105)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
mark
2015-4-13 12:48
0
雪    币: 246
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
唉。360以前so和dex都搞过。可惜现在转行了。多浪费了。
2015-4-16 22:15
0
游客
登录 | 注册 方可回帖
返回
//