iOS逆向 砸壳之dumpdecrypted

1.把app用iTools倒到电脑桌面,生成api的包,用归档实用工具打开

2.然后打开显示包内容,找到可执行文件,用Go2shell打开,在终端输入otool -l WeChat | grep crypt,查看文件加密还是不加密,cryptid 1为加密,cryptid 0为不加密
iOS逆向 砸壳之dumpdecrypted_第1张图片

3.在终端输入: lipo -info WeChat, 结果Architectures in the fat file: WeChat are: armv7 arm64,armv7 arm64两个架构,都为加密状态

4.下载dumpdecrypted砸壳工具,下载地址 https://github.com/stefanesser/dumpdecrypted, 下载后 打开终端 进入该砸壳工具的路径 终端执行

make

获得图1里的dumpdecrypted.dylib
iOS逆向 砸壳之dumpdecrypted_第2张图片
5.ssh连接到手机,打开你想砸壳的APP,在运行手机的终端 输入 ps -e

得到

2138 ?? 0:19.53
/var/containers/Bundle/Application/6A0A9377-9C98-426B-9BED-08AE81DC2DF2/WeChat.app/WeChat

6.手机终端输入cycript -p2138

7.然后输入

[NSHomeDirectory() stringByAppendingString:@"/Documents"]

进入后 可以执行相应的OC代码 此处要获取的是沙盒路径

/var/mobile/Containers/Data/Application/69E1EFA7-86DD-4D55-8F59-6D83D6974A23/Documents

8.对电脑上的dumpecrypted.dylib文件,进行签名

在新开的终端输入: security find-identity -v -p codesigning,选择证书

然后在电脑dumpecrypted.dylib文件所在目录,codesign --force --verify --verbose --sign "iPhone Developer: xxx xxxx (xxxxxxxxxx)” dumpdecrypted.dylib,签名以后

9.把dumpdecrypted.dylib拷贝到 第6步获取到的沙盒路径下

10.在终端输入ctrl+D,退出cy#
11. cd到Documents的文件夹下,执行 DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib “可执行文件的路径(即之前获取到的Bundle路径)”,即

2138 ?? 0:19.53
/var/containers/Bundle/Application/6A0A9377-9C98-426B-9BED-08AE81DC2DF2/WeChat.app/WeChat

12.终端输入ls,会有WeChat.decrypted 这个文件,砸壳成功,拷贝到电脑,现在你就可以开始用class_dump 、Hopper Disassembler、IDA工具等来分析了,下图是砸壳成功的显示
iOS逆向 砸壳之dumpdecrypted_第3张图片

你可能感兴趣的:(iOS逆向)