1.frida-iOS-dump砸殼
1.mac 使用ssh連接iPhone,把當前連接設(shè)備的22端口(SSH端口)映射到電腦的2222端口,
2.下載frida-ios-dump 源代碼并安裝依賴
git clone https://github.com/AloneMonkey/frida-ios-dump.git # 下載源代碼
cd frida-ios-dump # 切換到代碼目錄
pip install -r requirements.txt --upgrade # 安裝依賴
dump.py 中默認參數(shù)如下,所以連接iPhone時使用電腦的2222端口映射。如有不一致,則需修改dump.py 的默認配置。
User = 'root'
Password = 'alpine'
Host = 'localhost'
Port = 2222
3.cd 到 firda-ios-dump路徑下,執(zhí)行
dump.py -l
可獲取到手機上所有已安裝app的信息,包括BundleId
再執(zhí)行砸殼命令
dump.py BundleId
砸殼成功后, ipa包生成在 frida-ios-dump 文件夾中
4.class-dump 導出頭文件
class-dump -H App 的路徑 -o 存放. h 的文件夾
M1 Mac 逆向環(huán)境配置參考該文章
https://iosre.com/t/apple-m1/18907
Reveal配置參考該文章
http://m.itdecent.cn/p/6cac1052879d
安裝theos之后,直接執(zhí)行nic.pl會找不到該命令
nic.pl
zsh: command not found: nic.pl
解決辦法:
vim ~/.bash_profile
添加以下幾行:
export PATH=/opt/MonkeyDev/bin:$PATH
export THEOS=/opt/theos
export PATH=/opt/theos/bin/:$PATH0
然后執(zhí)行
source ~/.bash_profile
這樣就可以全局使用nic.pl
如果關(guān)閉終端之后重新打開就又需要輸入source .base_profile才能生效,出現(xiàn)的原因是因為系統(tǒng)默認使用的是zsh終端導致,然后網(wǎng)上已經(jīng)有很多種解決方案了,但是我自己試了都是沒有效果,最終直接將.base_profile內(nèi)的環(huán)境變量全部復制到.zshrc文件內(nèi)。
最后在終端內(nèi)輸入source .zshrc立即生效,問題得到解決。
make項目是出現(xiàn)缺少sdk的提示:
==> Error: You do not have any SDKs in /Library/Developer/CommandLineTools/Platforms/iPhoneOS.platform/Developer/SDKs or /opt/theos/sdks.
解決方法:
指向到你要使用的xcode中,如果只裝了一個xcode,則:
sudo xcode-select --switch /Applications/Xcode.app
2.MonkeyDev安裝與使用
1.按照官方文檔流程安裝MonkeyDev
安裝時如果遇到curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused情況,可通過修改host文件解決,可參考
修改 Hosts 解決 Github 訪問失敗
2.重新打開Xcode,新建project,選擇MonkeyDev工程

3.將砸殼后的ipa拖入工程目錄-TargetApp中

4.打開工程,選擇真機運行
如果出現(xiàn)錯誤file not found: /usr/lib/libstdc++.dylib,需要添加一下libstdc++.dylib,參考
github教程
5.運行成功后,可使用View Debug 調(diào)試界面
