![安卓Frida逆向与协议分析](https://wfqqreader-1252317822.image.myqcloud.com/cover/82/47217082/b_47217082.jpg)
1.3.2 ROOT
上一小节中,我们已经完成了Nexus 5X版本的刷机工作,此时获得的是一个全新的没有做任何操作的新机。开启测试机的开发者模式后,打开USB调试按钮,此时就可以使用ADB连接手机了。在这一节中将演示对Nexus 5X进行Root的过程。具体步骤如下:
要进行ROOT,首先需要将TWRP刷入Recovery分区。
TWRP(Team Win Recovery Project)是一个开放源码软件的定制Recovery映像,供基于安卓的设备使用,允许用户向第三方安装固件和备份当前的系统,通常在Root系统时安装。而Recovery指的是一种可以对安卓机内部的数据或系统进行修改的模式(类似于Windows PE或DOS),也指Android的Recovery分区。
由于笔者使用的是TWRP的官方镜像文件,这里提供TWRP对应的官方网址:https://twrp.me/Devices。在进入该网址后,选择对应型号的设备和相应版本的IMG镜像文件,比如这里先单击LG进入LG厂商的设备列表,选择LG Nexus 5X(bullhead),然后在Download Link这里选择对应的美版或者欧版,此处选择美版,也就是Primary(Americas),具体需要读者参考自己的手机类型进行选择。下载完成后,就可以选择不同版本的twrp-3.3.0-0-bullhead.img下载了,这里选择3.3.0版本的TWRP。
下载完毕后,如果在Nexus系列的手机上,还需要将TWRP刷入Recovery分区:使设备进入Bootloader界面,并使用Fastboot工具将TWRP镜像刷入Recovery分区。
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P20_11752.jpg?sign=1739288527-xMMTJerfhSJDcmMU1o9DGNnC25yz6cqH-0-7a56a7bbd528ae5f7ff8c192ecfcc875)
在进入Bootloader界面后,按音量上下键直到页面出现Recovery mode字符串后,使用电源键确认进入Recovery恢复模式,这时就进入TWRP的界面了。
在进行步骤04之前,还需要使用adb命令将Root工具推送到测试机的/sdcard目录下。Root工具可以选择Magisk或者SuperSU,这里以Magisk为例。先从GitHub上Magisk的仓库的Release中下载新版的ZIP文件,网址为https://github.com/topjohnwu/Magisk/releases。注意选择Magisk,而不是Magisk Manager,笔者写作本书时,新版为Magisk-v20.4.zip。
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P20_11755.jpg?sign=1739288527-T86tJZR19bEblLNV8LQQh09GBaDWZfaS-0-63588e5b055e974e7c3cdb94bbb05420)
如图1-16所示,在进入TWRP界面后,首先滑动最下方的按钮Swipe to Allow Modifications进入TWRP主界面。然后单击Install,此时会默认进入/sdcard目录,滑到最下方就能看到刚刚推送到手机上的Magisk-v20.4.zip。
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P21_9272.jpg?sign=1739288527-H8XQ6HeKCJQSSzFqYZ069YnGCnVQXUge-0-d53c74eaf5e598882dce0c1efad71a7e)
图1-16 TWRP界面
如图1-17所示,单击Magisk-v20.4.zip,进入Install Zip界面,滑动Swipe to confirm Flash滑块,开始刷Magisk的流程,然后静待界面下方出现两个按钮,即代表Root完毕。
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P21_9274.jpg?sign=1739288527-Syx3AAc2sPnNTF3X9mEHagEPugsnFOlU-0-47d7fde52235319f8242a1c6dd0d5f76)
图1-17 刷Magisk
单击Reboot System按钮,重新启动系统,会发现手机应用中多了一个Magisk Manager,此时在Terminal中进入adb shell终端,输入su,会发现手机界面提示Root申请,单击“允许”后,手机的shell即可获得Root权限,如图1-18所示。命令执行结果如下:
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P21_11757.jpg?sign=1739288527-bp5QbEOV1ST9e9vpIwcnj6KQrWP5ZXK9-0-cf3cc22b4775f952e2f6b8ca8edf2989)
至此,就完成了手机的Root工作。当然,使用SuperSU对设备进行Root的操作也是类似的,仅仅是将Magisk.zip换成SuperSU.zip而已,这里给出SuperSU的官方网址:https://supersuroot.org/。注意SuperSU的Root和Magisk的Root是冲突的,在进行SuperSU的Root之前,先要将Magisk卸载掉,这里的卸载不是简单地卸载Magisk Manger这个App,而是在Magisk Manger的主界面单击“卸载”按钮,从而还原原厂镜像,在还原后,就可以愉快地使用SuperSU进行Root了,如图1-19所示。
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P22_9283.jpg?sign=1739288527-PovlyHakcnWbOwz4KOWEjyHjq4bafnGg-0-3bbf21192d4ff9c61201ef1d93cf5c18)
图1-18 Root申请
![](https://epubservercos.yuewen.com/73C614/26581446601318906/epubprivate/OEBPS/Images/Figure-P22_9284.jpg?sign=1739288527-SEx5XEikDFiSnsGqQ3I4iZ7C9KiWrIud-0-480a8d6d130d92e0ebb7a1bbfe13cb60)
图1-19 卸载Magisk