Skip to content

通过 Magisk 获取 Root

第一章:安装 Magisk

1️⃣ 解锁 Bootloader。

2️⃣ 提取 boot.img。

  • payload-dumper-go 方法【卡刷包】
    1. 复制 payload.bin 到 payload-dumper-go。
    2. 点击“打开CMD 命令行.bat”。
    3. 输入 b 来提取 boot.img。

3️⃣ 提取的 boot.img 传给手机 Download 目录中。

4️⃣ 下载安装 Magisk。Releases · topjohnwu/Magisk · GitHub

5️⃣ 打开 Magisk ==> 安装 ==> 选择 boot.img ==> 开始修补文件 ==> 修补完成。

修补生成的文件 magisk_patched-xxx.img 在 Download 目录中。

6️⃣ 安装 platform-tools Windows zip

7️⃣ magisk_patched-xxx.img 复制到电脑 platform-tools Windows zip 目录下。

8️⃣ 手机进入 Bootloader 模式。

9️⃣ 刷入修补后的文件。fastboot flash boot 面具文件

🔟 使用指令 fastboot reboot 重启手机。

如果刷入 magisk_patched-xxx.img 不能开机,可以把前面提取的 boot.img 通过 fastboot 刷回去,恢复原版 boot,一般都能正常开机!

如果内核版本为 Android 13 及以上,则需要提取 init_boot,修补 init_boot 文件。

第二章:过环境

参考资料:

https://github.com/yashaswee-exe/AndroidGuides/wiki/Fix-integrity-and-root-detection

一、隐藏 Magisk

第一步:Magisk 随机包名

第二步:隐藏 Root

1️⃣ 下载 Shamiko

2️⃣ 打开 Magisk ==> 设置 ==> 开启 Zygisk

3️⃣ 安装 Shamiko 模块

4️⃣ 选择隐藏模式(推荐白名单模式)

  • 白名单模式

    • 优点:全局隐藏,已授权 root 的 app 可以正常使用 root 权限。
    • 缺点:需要授权 root 时,关闭 Shamiko 模块重启手机,授权完再启用 shamiko 模块重启手机即可。
    • 启用步骤:/data/adb/shamiko 创建 whitelist 文件,然后重启手机即可。
  • 黑名单模式(默认模式)

    • 优点:授权 root 方便,只需不把该软件加入到排除列表中即可。当应用需要 root 权限时,可以发起申请。

    • 缺点:每个需要隐藏 root 权限的应用要单独配置。

    • 为某个应用配置隐藏 root 步骤:打开 Magisk ==> 设置 ==> 配置排除列表

      不要开启“遵守排除列表”功能。该功能只是使得 magisk 不作用于某个应用(会使 LSP 模块失效),但该应用还能检测到 root。

第三步:隐藏应用列表

1️⃣ 下载安装 Hide My Applist

2️⃣ 下载安装检测器 Applist Detector

3️⃣ 打开隐藏应用列表 ==> 模板管理 ==> 创建黑名单模板 ==> 编辑列表 ==> 把不想被检测到的 APP 勾上(比如像 ROOT、模块这些)。

4️⃣ 打开隐藏应用列表 ==> 应用管理 ==> 选择应用 ==> 启用隐藏(勾选模板) 确定 ==> 然后打开 ApplistDetector(检测器) 看看是否隐藏好了。

二、隐藏 Bl & 解决 tee 损坏

第一步:Tricky Store (TS)

下载 magisk 模块 Tricky Store,且安装。

重要配置文件:

  • /data/adb/tricky_store/keybox.xml
  • /data/adb/tricky_store/target.txt:需要对哪个应用生效。

第二步:Tricky Addon module

1️⃣ 安装 KSUWebUIStandaloneMMRL

注意:如果未安装任何组件,则自动安装 KSUWebUIStandalone。

2️⃣ 下载 magisk 模块 Tricky Addon module,且安装。

第三步:Play Integrity Fix (PIF)

Play Integrity Fix 模块专注于修复 Play Integrity 和 SafetyNet 的验证结果,以便获取有效的认证。

目前 Play Integrity Fix 已经删库跑路了。

推荐新的 PlayIntegrityFix NEXT

第三章:推荐模块

一、必备

  • LSPosed 框架模块

    提示:参见 LSPosed框架使用指南.md 文档。

  • Zygisk

    • Zygisk Next

      独立实现的 Zygisk,为 KernelSU 提供 Zygisk API 支持,并替代 Magisk 内置的 Zygisk。

    • ReZygisk

      最新版本的 Zygisk Next 不是开源的,所以有了 Zygisk Next 一个新的开源分支。

二、系统优化

1. 系统安全

  • 隐藏 Root

    • Shamiko

      一个 magisk/KernelSU 模块,可以防止某些应用检测到系统已经 ROOT,以便正常使用这些应用。

    • Zygisk Assistant

      一个 Zygisk 模块,用于隐藏 KernelSU、Magisk 和 APatch 的 root,旨在支持 Android 5.0 及以上版本。

      使用方法:

      • 对于 KernelSU 和 APatch 用户:安装 Zygisk Next​;确保在 KernelSU/APatch Manager 中为目标应用程序启用卸载设置。
      • 对于 Magisk 用户:在 Magisk 设置中打开 Zygisk;在 Magisk 设置中关闭“遵循排除列表”;将目标应用程序添加到排除列表中。除非您使用带有白名单的 Magisk 分支。
  • 隐藏 BL 与 Tee 损坏

  • 其他

2. 系统保护

  • YetAnotherBootloopProtector

    尝试保护您的设备免受由 Magisk/KernelSU/APatch 模块引起的启动循环和系统界面故障。

    使用方法:

    • 自动检测:如果系统异常,会自动禁用所有模块。可以使用操作按钮来再次启用所有模块。
    • 手动禁用:在 rec 模式下刷入该模块,会禁用所有模块。
  • abootloop

    安装完 Magisk 模块后都需要重启手机,若此时无法正常进入系统(无限重启),可以使用此模块在系统启动时禁用所有 Magisk 模块。

3. 系统净化

  • Universal GMS Doze

    修补 Google Play 服务应用程序和某些进程 / 服务,以便能够使用电池优化。

  • 删除预装软件

    建议如果手机存储空间足够,使用有冻结应用功能相关的应用(如:冰箱、黑域、Thanox)或模块(如:墓碑)。

    • System App Nuker

      支持图形化界面操作。也支持恢复已删除应用。

    • SystemlessDebloater 或者 SystemlessDebloater

      选择性地移除预装的系统应用,而不会对系统分区进行永久性修改。这种“系统无痕”卸载方式确保了系统的完整性,并允许用户在需要时恢复这些应用。

      使用方法:

      1. /sdcard/Download/ 目录下创建 SystemlessDebloater.cfg 文件。内容参考 CommunityList
      2. 刷入模块。

      不推荐使用这个模块,因为作者描述最高支持安卓 13,且 2 年没有更新了。而且只能移除作者特定的,不是包名移除。

4. 系统增强

  • Flag-Secure-Patcher

    绕过应用程序设置的防截图限制。

  • Magisk-iOS-Emoji

    替换安卓表情符号为 IOS。

  • net-switch

    阻止某个应用程序联网。

  • zygisk-detach

    将已安装的应用程序与 Play 商店分离,以对抗其忽视用户设置的自动更新选项的激进更新政策。

    用法一:

    1. 在 Magisk 中启用 zygisk 或者如果你使用 KernelSU,则刷入一个 Zygisk Next 模块。

    2. 刷入 zygisk-detach 模块。

    3. 重启设备。

    4. 运行命令行:detach(或者如果你没有使用 termux,运行 su -c /data/adb/modules/zygisk-detach/detach)。

      或者使用 zygisk-detach-app,如果你不想使用终端的话。

      或者如果你在 KernelSU 上,可以使用 WebUI。

    5. 选择您希望分离的应用。更改会立即生效,无需重启。

    用法二:在刷入模块时自动分离任何应用的方法。只需将包含包名的 detach.txt 放入模块 zip 中。

    # detach.txt 文件内容示例
    com.app1
    org.app2
  • Unlimited-GooglePhotosBackupMod

    启用无限谷歌照片备份。

  • 自动任务

  • FingerprintPay

    让微信、QQ、支付宝、淘宝、云闪付支持使用指纹支付。

    提醒:这个模块作者提供了两种方式激活。一种 magisk 模块激活,另一种 xp 模块激活。

  • magisk_overlayfs

    使系统分区变为读写。内核必须支持 overlayfs!

  • 无障碍守护

  • WiFi Password Viewer for MMRL (wpd)

    使用 DOMParser 提取本地保存的 WiFi 密码。MMRL 版本只能是此模块指定的。

    推荐在爱玩机工具箱中查看 WiFi 密码。

5. 信任证书

  • Custom Certificate Authorities

    使用方法:把证书放到 /data/misc/user/0/cacerts-custom 路径下。需要从系统移除此证书,从这个路径删除即可。

    注意:只要操作了这个目录,都要重启手机才能生效。

  • MoveCertificate

    使用方法:导出证书后直接 push 到手机,使用系统设置正常安装证书,完了重启即可,不需要格式转换。

    提示:可搭配 appproxy vpn 代理工具。

  • AlwaysTrustUserCerts

  • MoveCert

三、去广告

  • 去广告

    host + chattr + pm + iptables 去广告,host 规则来自网络 + 本人手动抓取。pr#)FSarXz!

    名称说明
    hostshosts拦截域名,host相当于一个本地的dns,理论上并不会影响网速,甚至还能加快(屏蔽了不需要的ip)节省流量,缺点就是不支持屏蔽二级域名和支持通配符。
    chattrchattr + i 命令能够锁定文件不被删除 / 修改,能够有效屏蔽毒瘤的 sdk 写入上传信息。
    iptables目前我用来屏蔽某些网站的次级域名,补充一些 host 的不足。
    pmpm (cmd package),安卓上通用的禁用应用组件方式,屏蔽不必要的流氓行为。

    作者模块发布地址:去广告模块文档

  • AdGuardHomeForRoot

    在安卓设备上运行 AdGuardHome 的模块。

  • bindhosts

    管理系统 hosts 文件。

  • stevenBlock

    修改 hosts 文件达到屏蔽。安装后即可使用,它会自动更新。

  • Malwack

    修改 hosts 文件达到屏蔽。安装后即可使用,它会自动更新。

  • AntiAMTS-Magisk

    广告与跟踪屏蔽,安装即可使用,无须配置,它会自动更新。

大多数去广告的都是修改 hosts 文件,如何知道屏蔽了哪些域?访问 Google Play 或 F-Droid,搜索“hosts manager”或“hosts editor”。这些实用工具可以让您像专业人士一样浏览和调整您的被阻止域名列表。

四、模块管理器

五、代理

  • box_for_magisk

    也叫 Box for Root (BFR) ,允许在具有 root 权限的 Android 设备上配置透明代理。

  • Xray4Magisk

    Xray/V2ray/Sing-box/Mihomo/Hysteria2 的 Magisk 模块,支持 arm64, x64 架构。

六、瞎折腾

附加

一、参考文章

二、记录一些过环境错误

1. Luna

问题:Cheat APP*
解决办法:拔掉充电器。

2. Native Detector

问题:检测到异常启动状态:ro.boot.vbmeta.digest: , Boot hash: a939b97f9xxxxxxx
解决办法:复制Boot hash值,在 TS 插件中设置设置哈希值。

问题:检测到隐藏应用列表
解决办法:使用一个修改了包名的 apk 即可。

Released under the MIT License.