-
-
[分享]加固与脱壳-脱壳介绍
-
2022-2-2 15:29
14475
-
0x1 脱壳原理
1.内存dump
加密的dex文件运行的时候在内存中会解密,我们可以通过内存dump来将内存中解密后的dex拷贝出来
0x2 IDA脱壳
1.IDA脱壳原理
通过ida在art.so的dexfileopen函数下断点,查看dex在内存中的位置和大小,然后使用ida脚本对dex进行dump。
2.编写ida脚本难度太大,不适合新手。
0x3 Frida脱壳
1.原理
Frida是个hook框架, 可以动态注入app,使用脱壳脚本自动对解密函数自动hook,对内存中的dex进行dump。
2.适合新手。
3.简单使用
1 2 | frida - ps - Ua / / 列出正在运行的程序,U表示usb
frida - dexdump - p 进程 id / / 对指定进程进行dump
|
脱壳后可能会存在好几个dex文件,找文件大小最大的dex文件,进行反编译。(因为dex文件越大,越完整)
0x3 xposed脱壳
1.原理
Xposed也是一个hook框架, 同样能实现ap脱壳。
0x4 判断是否加壳
1.使用ApkScan-PKID工具,将apk文件拖进去可以看是否加壳。
2.使用jd-gui对jar包进行反编译,可以看到源码,识别多种加壳。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课