首页
社区
课程
招聘
5
[求助]Vivo Mediatek机型LK(ABOOT)文件Android Verify Boot校验的困惑和一点研究
发表于: 2021-6-21 23:36 23223

[求助]Vivo Mediatek机型LK(ABOOT)文件Android Verify Boot校验的困惑和一点研究

2021-6-21 23:36
23223

序言

最近折腾的Vivo MTK机型IQOO Z1,研究Root时在AVB部分遇到了一些困难,特整理了一些资料来求助看雪大神,详述如下:

解锁与刷写

该机型的Bootloader上锁方式极为奇葩,且听细细道来。

 

在旧版本上,酷安的朋友发现该机型采用了Google提供的简单OEM锁,遂尝试解锁并获取Root。

 

BL解锁是成功的,但令人困惑的是此LK(ABOOT)并没有提供相应的烧写命令,EDL刷写也存在校验。所以无法刷写打入补丁后的boot.img文件进行测试,前期研究遂终止。

 

令人惊喜的是,过后不久在XDA论坛爆出了Mediatek机型通用的EDL刷写验证绕过的漏洞,遂可以使用SP Flash Tool进行刷写尝试。我和朋友着手开始了对Vivo IQOO Z1机型Magisk打补丁进行Root的研究。

Root尝试失败

开始研究之初我们便遇到了困难。该机型BL解锁后并不同于往常的机器,当刷写打补丁的boot后,无法正常引导。经测试该机型为secure boot:no状态时(如下图),仍会对vbmeta,boot文件进行校验,遂Root尝试失败。


[注意]看雪招聘,专注安全领域的专业人才平台!

收藏
免费 5
支持
分享
赞赏记录
参与人
雪币
留言
时间
心游尘世外
为你点赞!
2024-11-26 04:52
一路南寻
为你点赞!
2024-8-27 01:07
嫉妒的死远点
感谢你的贡献,论坛因你而更加精彩!
2024-8-3 01:51
PLEBFE
为你点赞~
2022-7-30 07:30
Youlor
为你点赞~
2022-7-17 11:19
最新回复 (14)
雪    币: 477
活跃值: (1412)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2

怎么关闭的secure boot?还有LK的base是什么?倒是多提供点已知的信息啊

最后于 2021-6-22 11:50 被mb_foyotena编辑 ,原因:
2021-6-22 11:47
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
mb_foyotena 怎么关闭的secure boot?还有LK的base是什么?倒是多提供点已知的信息啊
这个机型在旧版本可以解锁bl,secure boot就关了。LK似乎是是联发科和Vivo魔改的版本,网上找不到相应的BSP和源代码。可能是基于https://github.com/littlekernel/lk改的,我也不是很确定。需要进一步的协助的话,可以站内私信QQ吗,感谢!
2021-6-22 15:50
0
雪    币: 2090
活跃值: (3948)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
iQOO Z1返厂搞个去年最初版本的系统就能root了,这个是因为新一点的系统把这个漏洞干掉了,所以没法直接烧写自己的内核进去。
2021-6-22 18:40
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5
lhxdiao iQOO Z1返厂搞个去年最初版本的系统就能root了,这个是因为新一点的系统把这个漏洞干掉了,所以没法直接烧写自己的内核进去。
我们能找到的就只有1.7.6 大佬可以详细讲讲吗 不过个人觉得问题不在这,现在主要是去vbmeta的校验有点棘手
2021-6-23 01:01
0
雪    币: 4752
活跃值: (2923)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
6
提供一个不一定靠谱的方案:

fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img

刷的时候加这两个参数会修改 vbmeta 里的两个 flag,不知道有没有用。
2021-6-23 22:35
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
LeadroyaL 提供一个不一定靠谱的方案: fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img 刷的时候加这两 ...

没有用,现在存在的是vbmeta文件本身的验证,这个命令的本质是对文件的读写,会导致签名改变。

我们的目的也差不多是这个命令的效果,但是存在对vbmeta的校验导致我们后续的修改都做不来。

最后于 2021-6-24 13:20 被mb_iolubvlg编辑 ,原因:
2021-6-24 13:18
0
雪    币: 160
活跃值: (411)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
私信我,我可以试试
2021-6-29 10:34
0
雪    币: 22
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
amazingosp 私信我,我可以试试
抱歉没有转正不能私信 q号:
bash64: MTQ5NzMzNzE3Mg==
@amazingosp @hackbs
麻烦了
2021-7-4 19:53
0
雪    币: 110
活跃值: (156)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
你找的资料也不少了,不少路我也走过
2021-7-9 12:08
0
雪    币: 5
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
提取lk用起来
2021-7-14 14:49
0
雪    币: 5
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12
lhxdiao iQOO Z1返厂搞个去年最初版本的系统就能root了,这个是因为新一点的系统把这个漏洞干掉了,所以没法直接烧写自己的内核进去。
提取这个版本的lk总在最新系统里
2021-7-14 14:50
0
雪    币: 9745
活跃值: (35)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
提供一个想法,可能在设备树中没有修改分区挂载时的校验标志位,即使关闭了avb,挂载分区时依然会去校验,但是因为avb关了,因此找不到资源就失败了
2022-2-11 18:12
1
雪    币: 9745
活跃值: (35)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
还有个问题想请教下,怎么用ida去修改aboot(lk内核)对分区的(比如boot)的验证呢
2022-2-13 14:34
0
雪    币: 0
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
你这lk是mtk版本,aboot是高通的版本。高通的安卓9的系统好像并没校验,可以直接定制system文件
2022-5-6 11:57
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册