0%

MIUI13逆向修改内核去掉反调试检测

很早之前就听说过修改内核源码过反调试检测,于是我直接打开小米的 github 上去找内核源码编译,然而小米 12 的源代码开源的并不是很彻底,缺少了一堆东西,还没法编译.-_-

那既然弄不到内核源码来编译,那我逆向你的内核总该可以吧.

小米 rom 下载地址

下载对应版本的线刷包
用 7z 打开
把 boot.img 提取出来
boot

解包

现在百度到的解包基本上都已经过时或者不可用了,但是没关系,我们可以借助 Magisk 的 magiskboot 来帮忙.

下载 Magisk apk, 用 7z 打开进入 lib 目录
magiskboot

把 libmagiskboot.so 拖出来。注意,这个 libmagiskboot.so 其实是一个可执行文件.
把它改成 magiskboot 即可.

把这个和 boot.img 丢到你手机的 /data/local/tmp 里

1
./magiskboot unpack boot.img

就可以把 kernel 文件解包出来了.

修改

直接用 ida 打开 kernel 文件,shift+f12 搜索

1
TracerPid

Tracerpid
Tracerpid2
双击进去查找交叉引用 (快捷键 X), 点进去就看到了代码.
然后把

1
MOV X2, X22

改成

1
MOV X2, #0

就行.
patch

重打包

1
./magiskboot repack boot.img

刷入新的 boot.img

1
2
adb reboot fastboot
fastboot flash boot boot.img

最后

本文主要参考了
绕过 Android 内核模块加载验证.
谢谢这位大佬.