firda-ios微信砸壳

1,607 阅读2分钟

前言

iOS 的砸壳一般三种:

  • Clutch
  • dumpedcrypted
  • frida-ios-dump

dumpedcrypted 现在用不了了,Clutch 我没试,就说一下 frida-ios-dump 的砸壳使用吧。

frida-ios-dump

它需要在 Mac 上和越狱的手机设备上分别安装一些软件。

Mac 上

进到 仓库,将 Code 下载下来到本地:

frida_frida目录.jpg

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 文件,看一下里面配置的端口号和密码:

frida_dump_py配置.png

如果你配置了自己的密码,或者连接的端口号不是 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

可以看到输出(因为我打开了微信):

frida_app列表.png

我们的目标就是微信:

# 开始砸壳,如果你默认用的是 python3,那么去掉 python3 的前缀也行
python3 ./dump.py com.tencent.xin

等待执行:

frida_砸壳结果.png

看到这个 微信.ipa,就说明我们已经砸壳成功了,砸出来的 .ipa 放在 frida-ios-dump-master 目录下:

frida_微信_ipa.png

一些指令

# 查看手机上安装的app和对应的bundle id
./dump.py -l
# 查看进程列表
frida-ps -U
# 查看正在运行的进程
frida-ps -Ua
# 查看可以运行哪些 app
frida-ps -Uai
# 砸壳
./dump.py bundleIdentifier

参考

官方手册

No Module named frida

frida-ios-dump砸壳工具使用