砸壳脚本
https://github.com/AloneMonkey/frida-ios-dump

frida-ios-dump
这里除了frida还有一些额外的环境
进入frida-ios-dump目录,安装一些所需的其他python库

pip3 install -r reguirements.txt


usbmuxd
brew install usbmuxd

砸壳

终端1

免密ssh登录越狱的iPhone手机

电脑端生成rsa密钥对ssh-keygen -t rsa -P '', -P ''表示密钥的密码为空
ssh-keygen -t rsa -P ''

上传公钥到手机

先连接手机终端,执行ssh-keygen,使手机自动生成.ssh文件夹,可见iphone越狱的手机路径在var/root/.ssh/id_rsa/

执行scp /root/.ssh/id_rsa.pub root@192.168.232.233:/var/root/.ssh/authorized_keys

使手机当前用户mobile和.ssh文件夹的权限是700, .ssh目录下的authorized_keys文件需要600或644权限

chmod 700 mobile
chmod 700 .ssh
chmod 600 authorized_keys


电脑端使用如下命令免密登录了同wifi下的iphone手机了

ssh -i /Users/xxx/.ssh/id_rsa_13 mobile@xxx.xxx.xxx.xxx
或者ssh root@192.168.232.233

砸壳

mac终端或者kali终端,新建命令行窗口执行
iproxy 2222 22
执行命令后,窗口不要关闭。
然后再新打开个命令行窗口
执行以下命令查看手机上面安装的应用清单
python3 dump.py -l

这里以百度输入法为例

fridadump xxxx
Start the target app xxxxx

砸完壳后
在frida-ios-dump目录可以看到脱壳后的ipa包

解压这个ipa包

unzip xx.ipa


解压后,会在当前目录得到一个payload文件夹

在payload目录下会看到相应的包,后缀为.app的

此时我们右键选择对应app,选择显示包内容,新建一个终端窗口,cd到包内容所在的路径中。

在包路径中,一般文件大小最大的二进制文件,就是脱壳后我们需要查看分析的应用包,直接otool -l 查看

在终端输入:otool -l xxx | grep crypt,我们会看到一个重要的信息,cryptid 1,这表明这个项目文件还未没砸壳,0则表示已经完成砸壳。

可以看到图片中的包已经完成砸壳

二进制逆向查看

直接将上述得到的IPA丢给hopper或者IDA中即可查看逆向代码