记砸壳工具 frida-ios-dump 的使用

拖延症赖了一个多星期,这篇博文主要记录一下使用 frida-ios-dump 对 App 进行砸壳前的一些准备。

庆哥在 README 中已经写清楚了该工具的用法,我是根据他给的步骤进行的,以下是操作步骤:

环境准备

安装 frida

frida 的安装很简单,我是直接 Google 搜索 frida ,然后根据官网上的文档进行安装的。

macOS 安装

frida 依赖于 python,macOS 已经自带 python 所以不需要再去安装。官网提供了两种安装的方式,我选择使用 pip 自动安装。在终端中输入以下命令回车,然后输入密码即可:sudo pip install frida

在这里我遇到了一个问题,导致安装失败。失败的提示主要是:

Operation not permitted: '/tmp/pip-uW0fNP-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'

这里是说无权限对 six 进行操作,经过一番 Google 之后在 pip 仓库的一个 issue 中找到了解决方法:即安装的时候忽略已安装的 six。

最后通过以下命令安装成功。

sudo pip install frida --ignore-installed six

这里应该是我没有关闭 SIP 而导致的问题,因为在公司的电脑上进行并没有出现这个问题。(PS:公司的电脑是从我的个人电脑迁移数据过去的,除了当时尝试全屏使用 iOS 模拟器而关闭 SIP 之外,没有其它不同的地方)

手机安装

官网同时提供了针对越狱手机和非越狱手机安装的方法。这里我只是在越狱手机上进行了安装,至于非越狱的手机暂时还没有尝试。

越狱手机的安装步骤如下:

  1. 启动 Cydia
  2. 添加软件源

    软件源 Sources-> 编辑 Edit(左上角)-> 添加 Add(右上角)-> 输入 https://build.frida.re

  3. 通过刚才添加的软件源安装 frida 插件。根据手机进行安装:iPhone 5 及之前的机器为 32 位,5s 及之后的机器为 64 位。

安装成功

两个端都安装完成之后可以用 USB 连接手机在 mac 终端中通过 frida-ps -U 命令测试,若输出手机上安装的 App 名称则说明安装成功。

ssh 连接手机

有两种方式连接手机:WiFi 和 USB。WiFi 连接仅需在手机上安装 OpenSSH 即可,USB 连接还需要在 mac 上安装一个工具 iproxy。

安装 OpenSSH

在 Cydia 中安装即可。步骤:Cydia -> 搜索 OpenSSH -> 点击安装

默认用户 root 的密码是:alpine ,连接成功之后使用passwd 命令修改密码。

WiFi 连接

首先需要找到设备的 ip,在 WiFi 详情里可以看到。然后在终端中通过 ssh 连接,命令为 ssh root@ip

这种方式的速度比较慢一点,建议使用 USB 连接。

USB 连接

frida-ios-dump 要求通过 USB 连接手机

有两个工具包都带了 iproxy

  • libimobiledevice
  • usbmuxd

这两个都可以通过 homebrew 安装。安装命令为:brew install libimobiledevicebrew install usbmuxd

安装完成之后在终端中通过 iproxy 命令映射端口:iproxy 2222 22,如图:

iproxy

然后在另一个终端窗口中通过 ssh -p 2222 root@localhost 进行连接即可。

Usb_ssh_connect_iphone

使用 frida-ios-dump

在终端中使用 cd 命令进入 frida-ios-dump 脚本所在的文件夹通过 ./dump.py app名称 命令即可进行砸壳。脚本运行完成之后会在文件夹中生成一个已砸壳的 ipa 文件,非常地方便。

总结

整个过程并不难,如果本来就有逆向基础的话应该非常快就可以做完环境准备,或者说可以直接使用工具了。而我因为没有相关知识,花费了比较多的时间去 Google,不过最后成功砸壳还是挺有成就感的。同时也需要继续学习,搞清楚原理,不能停留在工具的使用上。

文章目录
  1. 1. 环境准备
    1. 1.1. 安装 frida
      1. 1.1.1. macOS 安装
      2. 1.1.2. 手机安装
      3. 1.1.3. 安装成功
    2. 1.2. ssh 连接手机
      1. 1.2.1. 安装 OpenSSH
      2. 1.2.2. WiFi 连接
      3. 1.2.3. USB 连接
  2. 2. 使用 frida-ios-dump
  3. 3. 总结
,