iOS with Extension砸壳全过程
准备工作
- 一部越狱的手机
- dumpdecrypted或frida-ios-dump(砸壳使用)
- class-dump(导出砸壳后的二进制包的头文件)
- Cycript(Cydia)(在越狱手机的越狱市场下载,安装)
- OpenSSH(Cydia) (在越狱手机的越狱市场下载,安装)
- Frida(Cydia) (在越狱手机的越狱市场下载,安装)
重要步骤
在APPStore中下载正版的应用到手机上
以下以搜狗输入法为例(手机ios10.3.3 型号iphone 5c)
ssh至手机,并查看路径
转发手机22端口到主机2222端口 iproxy 2222 22
ssh至手机 ssh -p2222 root@127.0.0.1
查找 进程信息(此时app和extension都要打开)
1 | ps -e | grep Sogou |
dumpdecrypted砸壳
下载并编译dumpdecrypted cd dumpdecrypted && make
为dumpdecrypted.dylib签名codesign -fs "iPhone Developer: my.guo@foxmail.com (WJ79M49LT4)" dumpdecrypted.dylib
将dumpdecrypted.dylib拷贝到/usr/binsudo scp dumpdecrypted.dylib root@10.2.200.186:/usr/bin
执行以下命令为可执行文件砸壳
1 | DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/EFE80EA8-BF4D-49C9-A342-B22357CA1A93/SogouInput.app/SogouInput |
为extension砸壳
1 | DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/EFE80EA8-BF4D-49C9-A342-B22357CA1A93/SogouInput.app/PlugIns/com.sogou.sogouinput.BaseKeyboard.appex/com.sogou.sogouinput.BaseKeyboard |
结果会在执行目录下生成可执行文件.decrypted文件
将文件拷贝回电脑 sudo scp root@127.0.0.1:/SogouInput.decrypted ~/Desktop
frida-ios-dump 砸壳
按照说明配置环境
修改dump.py 中的user等
1 | User = 'root' |
开始砸壳
sudo ./dump.py com.sogou.sogouinput
查看可执行文件是否成功砸壳
otool -l 可执行文件路径 | grep cryptid
结果为1加密了,0没有加密