越狱、砸壳、反编译iOS
第一步、越狱
1.爱思助手 https://www.i4.cn/ 先安装mac端,再安装移动端
2.mac端爱思助手,刷机越狱,一键越狱,CheckRa1n越狱
3.CheckRa1n越狱 同时按住左侧声音变小键+右侧开关机键,按照指示,几秒后,然后只释放右侧开关机键。
4.安装CheckRa1n后,打开CheckRa1n,安装Cydia,越狱结束。(备注:这是不完全越狱,手机重启后,需要重新越狱)
第二步、砸壳
frida-ios-dump 开始砸壳
1.在mac安装frida
在mac安装python 3
brew install python3
在mac安装frida(客户端)
pip3 install frida-tools
2.在手机安装frida
在cydia中添加frida源 https://build.frida.re ,然后在手机安装frida
3.在Mac安装frida 砸壳脚本 https://www.jianshu.com/p/4aee1c07d1da
cd到已经下载的frida-ios-dump目录,执行以下命令安装依赖库
sudo pip install -r requirements.txt
4.通过USB链接手机和电脑
A.在手机上打开Cydia,搜索openssh并安装
B.在Mac安装 libimobiledevice
brew install libimobiledevice
C.完成第二步后执行以下操作,进行端口转换,此时终端界面显示waiting for connection
iproxy 2222 22
D.打开新的终端执行
ssh -p 2222 root@127.0.0.1
这时候可能会出现
The authenticity of host '[127.0.0.1]:2222 ([127.0.0.1]:2222)' can't be established. ECDSA key fingerprint is SHA256:+0hOqiykO/N5kh9p+mYk2pb+2MAb5Q1DkFK9tTCZ7TU. Are you sure you want to continue connecting (yes/no)?
输入yes后按回车,此时会提示你输入手机的root密码,默认密码是:alpine ,然后之前的那个waiting for connection终端窗口,就显示连接成功了。
5.新开一个终端,执行以下操作查看手机上正在运行的app,(手机上需要砸壳的App要运行起来,关闭其他APP)
frida-ps -Ua
6.开始砸壳,
A.新建一个文件夹,cd进去,准备接受要砸壳出来的iPA文件
B.将脚本文件夹中的dump.py脚本拖入命令行终端,在后面输入要砸壳的App的bundleID,最后生成一个砸壳后的ipa文件
/Users/huangzengsong/frida-ios-dump-3.x/dump.py com.tojoy.app
C.砸壳后查看ipa包是否加密,将.ipa改为后缀.zip,然后双击解压生成.app,下面的 BossCloud 是解压后生成的.app前面的名称。
otool -l BossCloud | grep crypt
若 cryptid 为0,为未加密,砸壳成功。若 cryptid 为1,为已加密。
第三步、反编译
导出头文件
1.class-dump 下载安装 http://stevenygard.com/projects/class-dump/ 下载dmg打开后,有三部分,class-dump可执行文件,readme和源码。
2.class-dump的可执行文件才是我们需要的文件,要把它放在系统目录下即可
/usr/local/bin/
3.新建一个文件夹,准备接受要导出来的头文件,执行以下命令,其中
class-dump -H 解压后的.app路径 -o 空文件夹路径
class-dump -H /Users/huangzengsong/***/BossCloud.app -o /Users/huangzengsong/***
MonkeyDev 安装与使用
1.安装theos
sudo git clone --recursive https://github.com/theos/theos.git /opt/theos
2.安装ldid
brew install ldid
若brew有问题需要执行以下命令,安装homebrew,然后再重新安装ldid
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
3.下载安装MonkeyDev
git clone https://github.com/AloneMonkey/MonkeyDev.git
将下载的 MonkeyDev 文件夹移到下面目录
cd /opt
cd /opt/MonkeyDev/bin
sudo ./md-install
由于网络被墙问题,会多次网络失败443等等,多次尝试即可。最终以下结果为成功安装。
备注:
安装 MonkeyDev 过程中可能会出以下问题
Failed to download https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/3.x/dump.py to /opt/MonkeyDev/bin/dump.py Failed to download https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/3.x/dump.js to /opt/MonkeyDev/bin/dump.js
因为 MonkeyDev 中的 bin 文件夹中的 md-install 文件中,暗含了安装 frida-ios-dump 的命令,所以注释掉即可。若没安装 frida-ios-dump,可以手动下载安装。
用 Xcode 打开 md-install,然后注释掉以下内容保存
#下载一些基础文件和模板文件 #downloadGithubTarball "https://codeload.github.com/AloneMonkey/MonkeyDev/tar.gz/$branch" "$MonkeyDevPath" "MonkeyDev base" #downloadGithubTarball "https://codeload.github.com/AloneMonkey/MonkeyDev-Xcode-Templates/tar.gz/$branch" "$MonkeyDevPath/templates" "Xcode templates" #下载frida-ios-dump #echo "Downloading frida-ios-dump from Github..." #downloadFile "https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/3.x/dump.py" "$MonkeyDevPath/bin/dump.py" #downloadFile "https://raw.githubusercontent.com/AloneMonkey/frida-ios-dump/3.x/dump.js" "$MonkeyDevPath/bin/dump.js"
然后将 frida-ios-dump 目录中的 dump.js 和 dump.py 文件复制到 /opt/MonkeyDev/bin 下面,重新执行 sudo ./md-install 即可。