1.需要一台越狱的iPhone手机
最好是完美越狱的,越狱比较简单,直接下载爱思助手或者是PP助手都可以一键越狱,爱思助手支持的iOS版本要高些。如果手机桌面上有Cydia就表示越狱成功了。
打开Cydia有可能会出现无法访问网络的情况
2.Cydia添加源
http://apt.25pp.com/
http://apt.saurik.com
http://cydia.angelxwind.net/
http://apt.thebigboss.org/repofiles/cydia
3.手机安装(由于手机版本问题有些插件不支持,找到相同功能插件就可以了)
Apple File Conduit "2"
可以访问整个iOS设备的文件系统
类似的补丁还有:afc2、afc2add
AppSync Unified
可以绕过系统验证,随意安装、运行破解的ipa安装包
Filza File Manager
可以在iPhone上自由访问iOS文件系统
类似的还有iFile、File Browser
PP助手
可以下载很多应用
OpenSSH
使用OpenSSH远程登录手机:
1.SSH是通过TCP协议通信,所以要确保Mac和iPhone在同一局域网下
2.Mac的终端输入ssh 账户名@服务器主机地址(ssh root@10.1.1.168
)默认密码alpine
登录成功后就可以使用终端命令行操作iPhone
3.退出登录命令是exit
vim
在终端编辑文件内容
adv-cmds
ps命令是process status的缩写,使用ps命令可以列出系统当前的进程
列出所有的进程ps –A
搜索关键词 ps –A | grep 关键词
Cycript
可以用来探索、修改、调试正在运行的Mac\iOS APP
http://www.cycript.org/manual/
cycript -p 进程ID
或者 cycript -p 进程名称
常用:
- Application对象:
UIApp
- 已加载的所有OC类 :
ObjectiveC.classes
- 用内存地址获取对象:
#内存地址
- 查看对象的所有成员变量:
*对象
- 递归打印view的所有子控件(跟LLDB一样的函数):
view.recursiveDescription().toString()
- 筛选出某种类型的对象:
choose(UIViewController)
choose(UITableViewCell)
封装的脚本https://github.com/CoderMJLee/mjcript
Reveal Loader
Reveal是一款调试iOS程序UI界面的神器
https://revealapp.com
1.安装完Reveal Loader后,打开【设置】->【Reveal】选择需要调试的App,选择需要调试的APP
2.找到Mac的Reveal中的RevealServer文件,覆盖iPhone的/Library/RHRevealLoader/RevealServer文件
3.重启SpringBoard或者重启手机
重启SpringBoard:killall SpringBoard
重启手机:reboot
Clutch
脱壳工具
https://github.com/KJCracks/Clutch
1.下载最新的Release版: https://github.com/KJCracks/Clutch/releases
2.建议去掉版本号,改名为Clutch
3.将Clutch文件拷贝到iPhone的/usr/bin目录
4.如果在iPhone上执行Clutch指令,权限不够,赋予“可执行的权限”
chmod +x /user/bin/Clutch
列出已安装的APP:Clutch -i
输入APP序号或者Bundle Id进行脱壳操作:Clutch -d APP序号或BundleId
dumpdecrypted
脱壳工具
https://github.com/stefanesser/dumpdecrypted/
1.下载源代码,然后在源代码目录执行make指令进行编译,获得dylib动态库文件
2.将dylib文件拷贝到iPhone上(如果是root用户,建议放/var/root目录)
3.终端进入dylib所在的目录
4.使用环境变量DYLD_INSERT_LIBRARIES
将dylib注入到需要脱壳的可执行文件(可执行文件路径可以通过ps -A
查看获取)
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib 可执行文件路径
.decrypted
文件就是脱壳后的可执行文件
在使用过程中,可能会遇到以下错误
could not load inserted library 'dumpdecrypted.dylib' because no suitable image found......
原因:对dylib所在的文件夹权限不够解决方案:将dylib放在用户所在文件夹,比如
如果是root用户,请将dylib放在/var/root
目录
如果是mobile用户,请将dylib放在/var/mobile
目录
通常情况下
通过Cydia安装的安装包是deb格式的(结合软件包管理工具apt)
通过PP助手安装的安装包是ipa格式的
如果通过Cydia源安装deb失败可以先从网上下载deb格式的安装包然后将deb安装包放到/var/root/Media/Cydia/AutoInstall
重启手机,Cydia就会自动安装deb
4.使用OpenSSH远程登录手机
wifi登陆
SSH是通过TCP协议通信,所以要确保Mac和iPhone在同一局域网下
终端输入ssh 账户名@服务器主机地址
例如ssh root@10.1.1.168
(这里的服务器是手机)
初始密码alpine
退出登录命令是exit
登录成功后就可以使用终端命令行操作iPhone
SSH - 基于密钥的客户端认证
1.在客户端生成一对相关联的密钥
终端命令ssh-keygen
生成的公钥:~/.ssh/id_rsa.pub
生成的私钥:~/.ssh/id_rsa
2.把客户端的公钥内容追加到服务器的授权文件(~/.ssh/authorized_keys
)尾部
ssh-copy-id root@服务器主机地址
需要输入root用户的登录密码
ssh-copy-id会将客户端~/.ssh/id_rsa.pub
的内容自动追加到服务器的~/.ssh/authorized_keys
尾部
这个过程不影响mobile用户,只解决了root用户的登录问题
如果配置了免密码登录后,还是需要输入密码,需要在服务器端设置文件权限
chmod 755 ~
chmod 755 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
通过USB进行SSH登录
Mac上有个服务程序usbmuxd(它会开机自动启动),可以将Mac的数据通过USB传输到iPhone
/System/Library/PrivateFrameworks/MobileDevice.framework/Resources/usbmuxd
1.下载usbmuxd工具包(下载v1.0.8版本,主要用到里面的一个python脚本:tcprelay.py)
https://cgit.sukimashita.com/usbmuxd.git/snapshot/usbmuxd-1.0.8.tar.gz
2.将iPhone的22端口(22端口提供SSH服务)映射到Mac本地的10010端口
cd ~/Documents/usbmuxd-1.0.8/python-client
python tcprelay.py -t 22:10010
(不一定非要10010端口,只要不是保留端口就行)要想保持端口映射状态,不能终止此命令行
端口映射完毕后,以后如果想跟iPhone的22端口通信,直接跟Mac本地的10010端口通信就可以了
3.新开一个终端
ssh root@localhost -p 10010
ssh root@127.0.0.1 -p 10010
(127.0.0.1本机虚拟网卡的IP地址)
usbmuxd会将Mac本地10010端口的TCP协议数据,通过USB连接转发到iPhone的22端口
远程拷贝文件也可以直接跟Mac本地的10010端口通信
scp -P 10010 ~/Desktop/1.txt root@localhost:~/test
将Mac上的~/Desktop/1.txt
文件,拷贝到iPhone上的~/test
路径
4.由于每次都需要输入ssh root@localhost -p 10010
太麻烦,可以在当前用户文件夹下建立usb.sh和login.sh脚本
usb.sh
cd ~
vim usb.sh
插入python ~/Documents/iOSReverse/tools/usbmuxd/tcprelay.py -t 22:10010
(tcprelay.py的文件路径)
保存退出esc ->:-> wq
login.sh
cd ~
vim login.sh
插入ssh -p 10010 root@localhost
保存退出esc ->:-> wq
现在可以直接执行sh usb.sh
,sh login.sh
就可以了
5.mac安装
1.iFunBox
文件管理系统
2.PP助手
自由安装海量APP
3.Reveal
建议下载至少Reveal4版本,支持USB连接调试,速度快
4.MachOView
Macho文件浏览器
5.Hopper Disassembler 4
二进制反编译工具
差不多越狱环境配置完毕了,现在可以在iFunBox里面看到iphone里面的文件,并在PP助手上上下载APP。
喜欢就请点个赞👍~