前言
iOS 的砸壳一般三种:
- Clutch
- dumpedcrypted
- frida-ios-dump
dumpedcrypted 现在用不了了,Clutch 我没试,就说一下 frida-ios-dump 的砸壳使用吧。
frida-ios-dump
它需要在 Mac 上和越狱的手机设备上分别安装一些软件。
Mac 上
进到 仓库,将 Code 下载下来到本地:
cd 进目录,终端执行:
sudo pip install -r requirements.txt --upgrade
如果没有安装 pip
终端执行
curl https://bootstrap.pypa.io/get-pip.py | sudo python3安装一下
手机上
打开 Cydia 添加源:build.frida.re,然后搜索下载 frida。
使用
Mac 终端输入:
frida-ps -U
验证一下 frida 是否可以使用,如果输出一串 PID 和 App 名字的列表,说明 frida 的环境已经搭好了。
开始砸壳,砸壳用的是 dump.py 这个脚本。
首先连接手机并登录,我用的是 usb 的方式,如果不知道如何登录,可以看看 Mac 连接 iOS 设备,打开 dump.py 文件,看一下里面配置的端口号和密码:
如果你配置了自己的密码,或者连接的端口号不是 2222,那么就修改一下这里的配置。
终端执行下面指令,保持在 frida-ios-dump-master 目录下(或者自行设置别名):
# 查看手机上安装的 app 和对应的 bundle id
./dump.py -l
如果出现:
Traceback (most recent call last):
File "./dump.py", line 11, in <module>
import frida
ImportError: No module named frida
将 ./dump.py -l 替换成:
python3 ./dump.py -l
可以看到输出(因为我打开了微信):
我们的目标就是微信:
# 开始砸壳,如果你默认用的是 python3,那么去掉 python3 的前缀也行
python3 ./dump.py com.tencent.xin
等待执行:
看到这个 微信.ipa,就说明我们已经砸壳成功了,砸出来的 .ipa 放在 frida-ios-dump-master 目录下:
一些指令
# 查看手机上安装的app和对应的bundle id
./dump.py -l
# 查看进程列表
frida-ps -U
# 查看正在运行的进程
frida-ps -Ua
# 查看可以运行哪些 app
frida-ps -Uai
# 砸壳
./dump.py bundleIdentifier