小米/红米手机ROOT简明指引

全文实操设备为MacBook Pro和小米13 Ultra

本意

想抓包,CA证书只能安装到用户空间,要想系统信任则root?

解BL锁

解BL锁会删除所有数据!!!

从预装HyperOS的小米14系列开始,小米设置的解BL锁门槛已经很高了,可能可以直接付费走灰产渠道。

小米13系列及之前的机型由于预装MIUI可以很容易解BL锁,即使升级为HyperOS了也可以通过 Xiaomi-HyperOS-BootLoader-Bypass 工具伪装为MIUI进行解锁。

如果HyperOS版本较新,上述工具进行账号绑定时会报错10000,解决方法是将设置App替换为老版本

账号绑定成功后等待7天用官方解锁工具解锁即可,如果用windows操作需要在官方解锁工具的右上角设置按钮进行驱动安装。特别注意要用工具界面指明的方式进入BootLoader模式下,不能adb reboot fastboot,也许adb reboot bootloader可行,两种方式进入fastboot的字体颜色不同。

ROOT

结合官方文档了解,当前最新KernelSU最新版本为1.0.1

解锁的目的是为了ROOT呼吸更自由的空气,ROOT后有一个老大难的问题就是如何隐藏ROOT以正常使用各大银行App、交管12123、12306、数字人民币等,相对于magisk目前推荐隐藏性更好的KernelSU。KernelSU 是一种基于内核的 Magisk 实现。它的主要特点是直接在内核层面上进行系统修改,而不是像传统的 Magisk 那样在用户空间中进行修改。这使得 KernelSU 能够提供更低级别的系统访问权限和更高的灵活性。

KernelSU的安装分为两种形式(细节看文档):

  • LKM (Loadable Kernel Module) : 使用可加载内核模块(LKM)的方式加载到设备内核中,不会替换掉设备原有的内核。
  • GKI (General Kernel Image) : 使用通用内核镜像(GKI)替换掉设备原有的内核。

由于LKM相对安全且方便OTA,推荐手机采用LKM的方式安装。

首先安装管理器 KernelSU_v1.0.1_11928-release.apk

# 确认电脑能通过adb连接到手机
adb devices
# 进入bootloader模式
adb reboot bootloader

# bootloader模式下确认设备已连接,确保已经安装驱动
fastboot device
# 先用GKI尝试启动设备,此处具体的android13-5.15.123为当前系统内核版本
fastboot boot android13-5.15.123_2023-11-boot.img
# 如果能启动成功,并通过管理器能看到GKI则表示GKI的方式root成功了,如果想采用GKI的方式,直接刷入就行
# fastboot flash boot android13-5.15.123_2023-11-boot.img

启动成功后,即已经使用GKI的方式安装成功了,借此更方便的进行LKM方式root:使用管理器选择“直接安装”进行自动修补boot并安装,重启即使用LKM方式root成功。

上述为最保险的操作过程,接下来补充更一般化的操作步骤(不管是LKM还是GKI):

  • 准备好原始boot.img或init_boot.img用于修补或者意外情况下进行恢复 fastboot flash boot 原始文件

    这里涉及到boot文件的选择,内核为android13的修补init_boot

  • 修补boot镜像文件,得到用于root的ksu镜像文件,当然KernelSU也提供通用ksu镜像文件

    修复方式分为用KernelSU管理器修补和用ksud命令修补,细节看文档

  • bootloader模式下刷写 fastboot flash boot 修补文件

原始boot.img或init_boot.img镜像文件获取方式

  • 建议直接下载卡刷包,解压得到,如果只能下载到卡刷包再往下看

  • 下载系统卡刷包解压得到的payload.bin文件,也可通过手机系统更新界面下载全量安装包即为卡刷包

  • 使用工具 payload-dumper-go 提取出 boot.img 文件,内核为android13的需要提取(init_boot.img)

    # 使用brew安装提取工具,并提取指定模块
    brew install payload-dumper-go
    payload-dumper-go -p boot.img,init_boot.img payload.bin
    

OTA

如需OTA,则下载更新包之前需要在KernelSU管理器中设置->卸载还原boot镜像,更新完重启之前需要安装到未使用的槽位

KernelSU必要模块

  • ZygiskNext LSPosed模块必须

  • LSPosed-zgisk

  • Shamiko 隐藏root

  • MoveCertificate 安装系统信任的CA证书

    # 比如安装charles证书
    cp charles-ssl-proxying-certificate.pem `openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem | head -1`.0
    adb push *.0 /data/local/tmp/cert/
    
  • TrickyStore - 建议结合Tricky Store Assistant修改证书链,比Play Integrity更进一步隐藏“BL解锁“

  • PlayIntegrityFix 修复Play Integrity和SafetyNet

  • ClipboardWhitelist 允许应用后台读取剪贴板,配合kde-connect同步剪贴板 没成功,通过HyperCeiler可以实现半自动化

LSPosed必要模块

  • 隐藏应用列表:默认通过模版管理黑名单的方式在应用管理中对指定应用不可见,黑名单应包括所有敏感应用
  • Freedom+:净化抖音
  • Scene 任务管理器等
  • zhiliao:净化知乎
  • WeXposed: 增强微信
  • AdClose:屏蔽广告
  • HyperCeiler:HyperOS/MIUI增强

root检测

结合 检测APP 寻找最新版

推荐:

  • Applist Detector
  • Momo
  • Hunter
  • Native Test
  • Holmes
  • MemoryDetector
  • 密钥认证
  • YASNAC
  • IntegrityChecker
15 个赞

解锁system和data分区吗

hyperOS可以用?!这么强?

看得有点云里雾里的

你这眼神啊 这都是很久的教程了 澎湃至今无解

看错了,还以为小米14也可以

曾几何时,小米和Android还是自由开放的代名词呢

有找到解锁的方案我没采用,建议参考MoveCertificate项目的方式:通过KernelSU模块自动挂载分区的方式改写system分区内容

小米13 Ultra 已经升级到最新稳定版HyperOS,实测可以成功ROOT。其实ROOT门槛在于解锁BL 后续都很容易了。

所以冠名了“简明指引”,可能需要相关的领域前置知识看起来比较容易

对,隔壁封闭的IOS很容易就能安装CA证书,到安卓这反倒不行了

1 个赞

给你猫头戴上眼镜吧,看不清了都 :tieba_022: :tieba_022:

理论上都可以 主要是BL解锁费劲 如果真有需要可以付费尝试灰产途径

净化抖音和净化知乎这些也算必要模块吗,不是每个人手机都有这两个

有道理,按需选用吧

最关键的是得5级 还得答题 出厂澎湃。

有刚需的话,花钱可得 :grinning:

马上5级 还差60活跃,估计再签到个 20天 ,

先记号一下…

有没有办法全程不借助电脑用手机操作,譬如下载OTA全量包到手机然后重启到twrp刷入,但patch init_boot.img这些操作貌似没办法在手机端搞定…