dumpdecrypted是iOS砸壳过程中经常使用方法之一,使用dumpdecrypted的前提是需要获取应用沙盒和可执行文件的路径,目前我遇到的两种情况dumpdecrypted无能为力,只能通过Clutch实现。与dumpdecrypted相比Clutch更“暴力”,但功能更强大。
- 应用部分功能使用动态链接库实现,而动态链接库不在应用二进制文件中,在Bundle的其他目录,此时想解密这些动态链接库dumpdecrypted就GG
- 应用一启动会判断设备是否越狱,如果为越狱设备则应用直接退出,根本无法获取进程信息,dumpdecrypted完全无用,如果想分析这样的应用除了砸壳之外还需要patch代码,所以通过如下指令不但可以砸壳而且还可以获取ipa文件,patch二进制文件之后重签名就可以正常运行了。
iPhone:/ root# ./Clutch-2.0.4 --print-installed
Installed apps:
1: 网易云音乐 <com.netease.cloudmusic>
······
iPhone:/ root# ./Clutch-2.0.4 -d 5
2017.12.21 update
使用dumpdecrypted和Clutch解密文件encryption_info_command处理稍有差别
1
图1中上为Clutch,由于cryptid仍为1所以class-dump仍认为它为加密文件