本帖最后由 wstclzy2010 于 2019-5-9 19:36 编辑
前言:
今天的主角是今日头条极速版,极速版本身广告不多,但是也有两三个地方让人烦。分别是文章末尾的广告、视频下方的广告和个人主页滚动的图片。就以这三个方向去尝试hook。和上个帖子用flex盲猜不同,这次用reveal来直接获取目标类。
砸壳:
由于是App Store下载安装的应用,一定需要砸壳。cydia安装crackerxi,有图形界面的砸壳工具,很方便,你肯定一看就会用。能简单当然用简单的
class-dump导出头文件:
终端执行[Shell] 纯文本查看 复制代码 class-dump --arch arm64 拖入app文件夹 -H -o 拖入存放头文件的文件夹
Reveal分析:
cydia中的是1.0.1版本的reveal2loader,但必须用1.0.3版本的reveal2loader,这个在iOS12和reveal21以后的版本能正常使用,链接:https://pan.baidu.com/s/1nVVX3r8W8JKqoIqlCxXhYA 密码:62g6- 找到广告的视图,可以看到所在的类名
-
-
- NSObject下面的class就是对应的类名
- 去头文件所在文件夹去搜索对应的头文件,分别是“ExploreDetailADContainerView”、“TTVVideoDetailRelatedAdCell”、“AKPhotoCarouselCellView”
- 一般直接hook“initWithFrame”方法,但是我试过之后会崩溃,所以换个思路,把它高度宽度方法改成0,不就等于没有吗
- 图三直接hook它的图片显示方法
编写tweak:
还是选择monkeyapp,用logos语言(captainhook我不会啊)。所以代码为:
[Objective-C] 纯文本查看 复制代码 %hook ExploreDetailADContainerView
- (id)initWithWidth:(double)arg1
{
return 0;
}
%end
//文章尾部广告
%hook TTVVideoDetailRelatedAdCell
- (id)initWithStyle:(long long)arg1 reuseIdentifier:(id)arg2
{
return NULL;
}
- (void)setItem:(id)arg1{}
- (void)setSubviews{}
%end
//视频下方广告
%hook TTVVideoDetailCommodityItem
- (void)ttv_showCommodityTrack{}
- (void)openCommodity{}
- (void)show{}
- (void)layoutSubviews{}
%end
//视频商品推广
%hook AKPhotoCarouselCellView
- (void)createImageView{}
%end
//个人主页图片推广
真机调试,直接运行就行了
当然了,效果图
不越狱用cydia impactor安装:链接:https://pan.baidu.com/s/19pxQpKuDeNqSruU3mKw8HA 密码:pfuo(但是登录不了,检测到了bundle ID不是原来值)
越狱的话可以装插件
com.paigu.hook.jinritoutiaoliteHook_0.1-1_iphoneos-arm.deb.zip
(24.46 KB, 下载次数: 36)
(不能传deb,所以压缩成zip,解压后就是deb) |