OPPO 真的没办法 ROOT 吗?

170 天前
 AnnaIsGod
手上有一台 OPPO A92s ,每年我都会尝试 ROOT 这台手机,但没有一次成功的,说一下我的尝试,希望有大佬了解我还不知道的信息。
最开始是想利用 21 年 3 月的联发科漏洞,可以获取到临时 ROOT ,但要求系统版本在 21 年 3 月以前。尝试了一下降级,发现 Rec 有验证,没办法刷等级更低的包,后来手机半夜自动更新了一次系统,把 Rec 模式里面选择本地刷机包的功能给砍了,这条路就彻底没了。
官方有发布降级工具,但是我的型号用不了。

然后再底层一点,就是 fastboot 模式,这个模式我从手机买来的那一天起,就没成功进入过,adb 命令进入 fastboot 以后会显示一串英文:the serial is not match,fastboot verfity failed.
提前输入 fastboot 命令,会提示 Remote not support HAL 还是什么的,反正就是用不了。

最后只能把希望寄托在 bootrom 模式上,网上说的是天玑 1200 以下的芯片都可以用 mtkclient 解锁,我的天玑 800 理论上是可以的,也有跟我相同 cpu ,但是别的型号的手机成功解锁,但是我的这台手机不行。
驱动是完美安装的,版本是最新的,但 mtkclient 还会提示握手失败。
我去看了一下 mtkclient 的源码,握手阶段会通过串口向手机发送四个字节,得到回复以后就可以执行各种命令,通过漏洞覆盖掉特定内存区域的值。
我手动用串口工具模拟了这个握手的过程,发现根本没卵用,手机依旧不停发送 Ready ,然后关机。
我是做安卓开发的,嵌入式这一块儿确实不太懂,到底怎么才能握手通过,可能只有 OPPO 的工程师知道了.....

然后我还尝试了直接用 SP Flash Tool 线刷,好不容易把官方给的 ofp 格式的包转成了线刷包,验证文件跟 scatter 也都正常识别了,最后还是报了一样的错,握手失败......要不就是 DA 发送失败。
也试过一些 bypass 工具,无一例外都是报错。

然后就想着找一下 MTK 官方的文档,官网找不到,搜索引擎搜不到,ChatGPT 也不知道,基本没有资料......

最后的尝试是去逆向官方的降级工具,因为只有这个工具处理过的刷机包,才能在手机端通过设置卡刷,但是折腾了半天也没用,官方工具就只是生成了一个签名,然后把卡刷包跟签名放在同一个 zip 文件里,但是哪怕我用相同的算法给网上找的官方 ROM 生成签名并打包,手机端依旧显示认证不通过,反正就是不给降级......

到这里我真的已经没辙了,我的想法是硬件上的漏洞应该是没办法在软件层面修复的,而且还是 bootrom 这种只读存储器上的漏洞,希望有嵌入式大佬能赐教一二......
7107 次点击
所在节点    Android
38 条回复
JensenQian
170 天前
oppo 看型号,有些型号官方参加那个什么测试就可以
realme 也是,一加肯定可以

你别折腾了
AnnaIsGod
170 天前
@JensenQian 指望官方就算了,我的问题是是否还存在一些漏洞可以用来解 bl(硬件层面),因为前几次的漏洞都没赶上......
StarsunYzL
170 天前
撞到我的“专业”了,你的这个型号应该是可以用 MTK 漏洞解锁 BL / 刷改版 ROM 的。

mtkclient 跑不通估计是你的 BootRom 已经禁了,只能连接到 Preloader ,看设备管理里的 MediaTek 设备,如果是以下几个 VID/PID 那就是 Preloader:

0x0e8d/0x2000
0x22d9/0x0006
0x22d9/0x2000

Preloader 下你只能用官方的 DA 刷官方的 ROM ,要解锁 BL 或者 root ,需要先想办法从 Preloader 进入 BootRom ,然后用 BootRom 漏洞禁用安全认证就可以任意刷机了
dandycheung
170 天前
一年前,也曾想 root OPPO Reno4 5G
HojiOShi
170 天前
我以为自 Android L 以来,想 root 只能买能官解 BL 的手机这点已经是常识了。没想到十年过去了,还是有人不知道以前那些一键 root 的工具是怎么死的。
AnnaIsGod
170 天前
@StarsunYzL 好像跟你说的一样,确实只能进 preloader ,ID 是 22d9,2000 ,OPPO 独有的 ID......官方刷机包是有的,大佬知道官方 DA 要怎么弄吗? T T
AnnaIsGod
170 天前
@HojiOShi 我以前也觉得是常识,直到爆出各种漏洞,觉得相信常识未必有点傻
jkfadsljlasdgs
170 天前
蹲一个 OPPO K9 的 root
yolee599
170 天前
想办法解 BL 吧,解不了 BL 永远不可能 root ,我的魅族就是帖吧找人解的,要价 ¥ 160
HojiOShi
170 天前
@AnnaIsGod #7 能 root 的漏洞又不像树上的果子,隔段时间就能曝一个的。你要觉得你的能力能强过一大批黑帽白帽,那你就尽情折腾吧。对几乎所有人来说,想 root 直接买谷歌一加还是划算多了。
AnnaIsGod
170 天前
@StarsunYzL 我用了一些工具,日志是这样的:
Switch preloader to bootrom...crash succeed!
Waiting for mtk usb device... ok
BootMode : BootLoader[COM3]
USBDriver : wdm_usb
DriverVersion : 3.0.1512.0
DriverDate : 1-4-2023
ProviderName : MediaTek Inc.
Connecting to BootROM......
● Chipset MT6873
● Identifier Dimensity 800
● Info 8A00_CA00_0000_Margaux
● SecCFG SBC+SDA
Disabling watchdog..
Disable BRom protection...
send usb_ctrl data ...!
MTK Auth Disable(SLA/DAA) error!

crash 掉 preloader 以后,手机就直接重启了,然后再次按住音量加减,最后报错,手机就一直在 Preloader 模式下,只能长按电源键重启,这个模式下向串口发送任何数据,都会返回一样的数据。我在想是不是要拆机短接触点......
StarsunYzL
170 天前
@AnnaIsGod 官方 DA 不好搞,目前最靠谱的方法是去年年底新出的一种利用方式,可以直接从 Preloader 禁用安全认证,但这个方式目前没有免费工具,要是愿意花钱的话可以看看 unlocktool.net ,最便宜大概 3 个月 200 块,应该是支持你的手机型号,有一键解锁 BL 功能,要是不着急的话可以等等看有没有免费工具放出来,mtkclient 感觉应该已经在开发了,或者等等下半年可能我也会开发这个功能,到时候看看能不能给你测试 ->_->
hdp5252
170 天前
再买个能 root 的手机把
StarsunYzL
170 天前
@AnnaIsGod mtkclient 就带有 crash preloader 功能,并且当连接到 Preloader 时 mtkclient 会自动尝试 crash preloader ,如果成功的话就会进入到 BootRom ,没进入 BootRom 就是没成功,这个方法已经很老了,对稍微新一点的系统补丁基本都失效了
AnnaIsGod
170 天前
@StarsunYzL 我还是不太懂,系统补丁不是只能更新特定几个分区的文件吗,应该只能在安卓系统这个层级做更新。这些底层的漏洞为什么可以被修补,preloader 跟 bootrom 不都是写死的吗。求解
StarsunYzL
170 天前
@AnnaIsGod 只有 BootRom 是写死在芯片里的,更新不了,preloader 是在 eMMC / UFS 闪存上的一个“分区”里,手机厂商可以随便 OTA 更新 preloader 的,比如 VIVO 更新 preloader 可勤快了

你用过 MTK 官方刷机工具 SP_Flash_Tool 刷机时,在加载 scatter 文件后应该就能看到有一个 preloader 分区,可以自己勾选要不要刷 preloader
AnnaIsGod
170 天前
@StarsunYzL 懂了。但是很多跟我同样 CPU 型号的华为一类的品牌,就可以进入 bootrom ,所以我一直觉得是自己哪里操作错了,才导致握手失败,但是中途换了好几个 Mtk 驱动,重装了 Usb 驱动,还换了 linux 系统,结果都是提示:
Handshake failed 。preloader 可以在线更新,也就是说 OPPO 更新了 preloader ,导致 preloader 崩溃后不会进入 bootrom ,把这个漏洞修复了,可以这么理解吧。
thqw0925
170 天前
8gen2 机型好像可以,9008 被破解了。可以用 9008 刷入一加 8gen2 机型的 bootloader ,之后就可以解锁了。
StarsunYzL
170 天前
@AnnaIsGod 差不多吧,Preloader 还可以控制开不开放 BootRom ,有些手机最早出厂时是开放 BootRom 的,还有同时开放 Preloader 和 BootRom 的(上电时通过不同按键触发),后来 BootRom 爆出漏洞就 OTA 更新 Preloader 禁用掉了 BootRom ,所以同一 CPU 型号甚至同一个手机型号 BootRom/Preloader 的开放情况都可能不一样,据说 MTK 开始要求以后 Preloader 都不能开放了,现在三星一些 MTK 的手机 BootRom 和 Preloader 都没了
tammy
170 天前
unlocktool 可以免拆解 a92s ,不过这软件得咸鱼租

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1047469

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX