手机环境
- 打开cydia 添加源:
https://build.frida.re - 打开刚刚添加的源 安装 frida
可能遇到的问题,手机5s ,系统10.3.3,安装源一直失败。
image.png
如果报上述错误 安装不上
是因为iOS10环境默认不带XZ Utils, 需要自己下载安装
可以添加源https://apt.bingner.com/,里面有XZ Utils。
Mac 环境
- 安装
python - 安装
pip - 安装
frida环境
sudo mkdir /opt/dump && cd /opt/dump && sudo git clone https://github.com/AloneMonkey/frida-ios-dump- 安装依赖
sudo pip install -r /opt/dump/frida-ios-dump/requirements.txt --upgrade,安装失败没有权限,在命令后加上--user,sudo pip install -r /opt/dump/frida-ios-dump/requirements.txt —upgrade --user - 修改
dump.py参数 ,为自己的配置
User = 'root'
Password = '111111'
Host = 'localhost'
Port = 10010
- 设置别名:
vim ~/.bash_profile,末尾增加alias dump.py="/opt/dump/frida-ios-dump/dump.py" -
source ~/.bash_profile生效
- 遇到
python相关 无权限时,或者dump.py报错找不到python相关的东西,去看看系统自带的权限,加上当前账户访问文件夹权限。如下错误
image.png
- 连接手机,
dump.py -l查看进程,dump.py bundle id开始脱壳,会在当前文件夹得到.ipa文件。
image.png
导出所有头文件
目前很多app都对一些功能打成了framework,前面我们都只导出了可执行文件里的头文件,这次通过frida-ios-dump砸壳后,导出ipa里所有的头文件
-
https://github.com/QingangGit/all_class_dump.git下载这个脚本工具
image.png
- 在all_class_dump.py 顶部加入:
# coding:utf-8
image.png
-
python [all_class_dump.py文件路径] [ipa包路径]导出头文件,会放在当前目录下的dump_heads文件夹里
image.png
接下来去掉我目前最新的腾讯视频广告(8.2.82)
- 如果是前面文章所说的方式,只砸壳可执行文件,导出头文件,你会发现跟广告相关的类,压根就找不到,因为腾讯视频已经给它打成了
framework,你需要把framework也脱壳,导出头文件。 - 因此这篇采用
frida-ios-dump脱壳,再来实战一下 - 如果还是像以前那样
hook掉QNBPlayerVideoAdsViewController的几个方法,你会发现现在是不能去广告了的。 - 那么首先还是
Reveal查看一下层级
image.png
- 发现有上图2个视图,既然hook
QNBPlayerVideoAdsViewController已经不行了,那么我们就把上图2个视图的控制器给干掉试试。 - 如下图,hook
QADInteractAdContainView的控制器QADInteractAdBussinessVC,QADBaseEventView的控制器QADMobileNewVideoController。
image.png
-
跑到手机上看看
Dec-30-2020 12-08-04.gif
成功去掉了广告,经测试实际只需要hookQADBaseEventView的控制器QADMobileNewVideoController即可。
本文章仅供学习交流,如有侵权,请联系删除,谢谢!













网友评论