首页
社区
课程
招聘
[分享]【实战】某视频去广告
发表于: 2026-6-9 17:15 8640

[分享]【实战】某视频去广告

2026-6-9 17:15
8640

最近朋友推荐了一个看视频的软件,我寻思看看广告就看看广告吧,但是这个软件现在让我觉得它是个假的,因为广告点进去就跳转到别的app了。行吧,那我们来一探究竟吧。
原生无壳,非常好。
图片描述

图片描述
我只是想看个视频而已。而且这里的广告都好友(流)好(忙),
既然这样的话,我们就从这里的布局入手吧。

ok,紧接着我们定位页面位置和控件。
图片描述

图片描述

混淆一般,从这个Activity的ViewBinding得知,具体的布局文件是:activity_fareach_info,且找到了具体位置,
图片描述
简单分析了一下布局层级之后,那么这个核心部分应该就是在:

其实这里就需要分出一个开发上的知识了,就是自定义View,这个控件大概率是一个自定义ViewGroup,从他的一些属性来看的话,能看出来有很多自定义属性,这里我对它没有太大兴趣哈哈,就先略过。

代码很多,我们先不着急看,先来看看方法列表有没有比较敏感的字段
图片描述
看到有Ad相关的,还有Visibilty,这不就是控制显示隐藏的吗?
但是我英文不好,还是去翻译了一下。Reward是奖励的意思,那就是说 获取广告奖励的显示状态。
好这里调用是父类的同方法,继续往里看。

那么有get肯定有set,这里我们能看到它获取的是getExoPlayAdRewardLayout,
交叉引用发现只有这一个地方用了。
图片描述
但是代码是这么写的:

为了代码的客观性,我给这个c重新起个名字,那就叫exoPlayAdRewardLayout吧。
图片描述

前三个构造方法先pass,因为那里是初始化布局的地方。
最后一个也pass,因为我们刚才看的是最后一个方法,那么就剩下和这个b方法了,而且参数是int类型,View的setVisibility也是要的int类型的参数,这个方法可疑性极高,点进去看看。

果然,就是这里了。然后我还是给他改个名字,方便后面追代码好追。就成为了这样。

继续找交叉引用发现了只有BaseView中引用到了

继续找交叉引用,然后发现只有子类调用了

图片描述

这里的交叉引用有点多,也混淆了,那么这里我们就来打印个堆栈信息看看。这里我用的是算法助手

然后往上追到了z1方法

这里代码整体看一下,假设走到y8.a.b就是显示广告控件的话,那么上面的if就是成立条件,且代码中entry.getInterval_time是什么Interval_time不就是间隔时间吗?说英语不好能学代码不假,但是成本也确实高啊。英语好的话这里就少读很多。那么这里就是三个条件必须同时成立才会看广告。那我随便搞一个条件就行了。

这里我就看o1.a.Q()不顺眼,且这个返回值类型还是int类型的,我就hook一下它好了。这里我贴一下xp的hook代码片段,但是这里我为了省事我就用算法助手了。


[招生]科锐逆向工程师培训(2026年7月3日实地,远程教学同时开班, 第56期)!

收藏
免费 54
打赏
分享
最新回复 (32)
雪    币: 3031
活跃值: (2600)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
2
学习
2026-6-9 17:58
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
学习一下
2026-6-9 20:05
0
雪    币: 5594
活跃值: (3058)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
4
看视频的软件值得研究一下
2026-6-9 20:14
0
雪    币: 158
活跃值: (5051)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
学习 !!!
2026-6-10 15:50
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
666
2026-6-13 20:26
0
雪    币: 1475
活跃值: (1365)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
你的帖子非常有用,感谢分享!
2026-6-14 21:51
0
雪    币: 942
活跃值: (1170)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
666
2026-6-15 09:34
0
雪    币: 0
活跃值: (1466)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
11
2026-6-15 09:44
0
雪    币: 220
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
10
学习
2026-6-15 16:00
0
雪    币: 220
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
学习
2026-6-15 17:27
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12
1
2026-6-15 17:31
0
雪    币: 216
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
学习一下
2026-6-15 23:55
0
雪    币: 39
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
学习一下方法
2026-6-16 00:18
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
15
学习
2026-6-16 16:57
0
雪    币: 234
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
16
学习
2026-6-16 23:50
0
雪    币: 8
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
17
1
2026-6-17 07:48
0
雪    币: 220
活跃值: (501)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
学习
2026-6-17 17:55
0
雪    币: 115
活跃值: (1110)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
学习一下
2026-6-18 15:45
0
雪    币: 14
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
20
666
2026-6-18 16:08
0
雪    币: 24
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
21
666
2026-6-19 20:20
0
雪    币: 496
活跃值: (55)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
感谢各位厚爱,后续我的计划有二,一个是将app通过去除签名校验和修改smali之后可以在非Root的手机用。 然后再抽空抽丝剥茧还原视频算法。  如果还有空的话,可以考虑再通过接口和AI做一套ios的观影软件
2026-6-21 23:04
0
雪    币: 84
活跃值: (715)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
444
2026-6-22 16:24
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
24
666
2026-6-22 16:25
0
雪    币: 200
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
25
6666666666
2026-6-22 16:50
0
游客
登录 | 注册 方可回帖
返回