iOS with Extension砸壳全过程

准备工作

  1. 一部越狱的手机
  2. dumpdecryptedfrida-ios-dump(砸壳使用)
  3. class-dump(导出砸壳后的二进制包的头文件)
  4. Cycript(Cydia)(在越狱手机的越狱市场下载,安装)
  5. OpenSSH(Cydia) (在越狱手机的越狱市场下载,安装)
  6. 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
2
3
ps -e | grep Sogou 

cycript -p SogouInput

dumpdecrypted砸壳

下载并编译dumpdecrypted cd dumpdecrypted && make

为dumpdecrypted.dylib签名
codesign -fs "iPhone Developer: my.guo@foxmail.com (WJ79M49LT4)" dumpdecrypted.dylib

将dumpdecrypted.dylib拷贝到/usr/bin
sudo 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
2
3
4
User = 'root'
Password = '*****'
Host = 'localhost'
Port = 2222

开始砸壳

sudo ./dump.py com.sogou.sogouinput

查看可执行文件是否成功砸壳

otool -l 可执行文件路径 | grep cryptid
结果为1加密了,0没有加密