注意:本文仅作参考勿跟操作,root需谨慎,本次测试用的N手Pixel,因参考本文将真机刷成板砖造成的损失与本人无关
1 Google Pixel介绍
1.1手机 google Pixel
在手机选择上,优先选择谷歌系列手机,Nexus和Pixel系列,刚好手头有Pixel一代,就直接root了,大家感兴趣可以某宝几百块钱入手一台。Pixel手机花了本人一天,中间踩坑无数,终于还是root成功,感触颇深,所以先记录一下Pixel手机的root之旅。
安卓逆向学习及APK抓包(一)【Kali】安装 Scrcpy 进行手机投屏
2 google Pixel手机解锁
2.1 环境准备
除了准备Google Pixel手机外,你还需要准备一台机器,我用的kali,安装配置好adb环境参考上一篇文章《安卓逆向学习及APK抓包(一)【Kali】安装 Scrcpy 进行手机投屏》。
2.2 解锁手机
2.2.1 OEM解锁
在手机上找到设置→系统→关于手机→版本号,连续快速的点击版本号五下,打开开发者选项,即可进入开发者模式,然后进入设置→系统→开发者选项,打开USB调试选项。
点击oem解锁。
2.2.2 进入bootloader模式
手机通过数据线连接电脑,在关机状态下,同时按住电源键和音量下键不放。或者开机状态下执行
fastboot flashing unlock
#如果还不行试试其他指令
#fastboot oem unlock
#fastboot flashing unlock_critical
PS:如果手机OEM解锁成功,Device is显示unlocked在刷机中,经常有人会遇到刷机失败,手机变成砖头的情况,只要我们手机能进入bootloader模式就不用怕,多试试几个不同版本的镜像,通过adb push指令推到手机内存里进行安装,总能成功的。刷Android 8失败了,降到7,升到9都不行,最后又换成Android 8.1才成功的。
3 手机刷机
3.1 下载谷歌原生系统
到谷歌的官方工厂镜像网站,打开这个网站可能需要科学上网。网站中间有一些操作指南,右边就是手机型号一览表,在这里我们选择Pixel的型号sailfish,安卓系统Android 8.1的镜像,有部分版本的镜像区分欧版美版。此时可以看一下手机后面,写着G-2PW4100就是美版,4200就是欧版。可以看到从安卓7到安卓9均支持。
3.2 进入bootloader状态
首先将手机进入bootloader状态,执行指令
adb reboot bootloader
或者手动操作,流程如下:
将USB线断开,并确保手机有70%以上的电量;
将手机完全关机;
同时按住音量向下键和开机键;
手机将进入BootLoader状态;
3.3 刷入官方原生系统Android 8.1
手机用USB线连上电脑,运行脚本,将系统刷进手机
将系统镜像解压
进入解压目录,执行指令
./flash-all.sh (Mac/Linux系统)或者./flash-all.bat(windows系统)
等待刷机
刷机完成后,手机会自动重启,重启完成后即可自动进入系统。
记得再次打开USB调试选项
4、工具准备
4.1 TWRP及Magisk下载
需要下载临时的Twrp、永久Twrp及Magisk三个文件。
4.1.1 下载twrp
只需要下载twrp针对Pixel sailfish机型的镜像,刷进去即可,笔者选择的是3.2.3的版本。记住img,和zip的版本要对应好。我们下载的是twrp-3.2.3-0-sailfish.img镜像文件。
官网地址:https://dl.twrp.me/sailfish/
twrp-3.2.3-1-sailfish.img
twrp-pixel-installer-sailfish-3.2.3-0.zip
4.2 下载Magisk
Magisk是由中国台湾省topjohnwu开发的一款完全开源的root软件,其github项目托管主页在这里,大家进去下载release版本即可。
https://github.com/topjohnwu/Magisk
这里选择了这个版本:Magisk-v17.3.zip
5、刷入第三方Recovery:TWRP及Root
5.1、简介
由于Pixel及Pixel XL都采用A/B升级系统,因而可以理解为手机里有2个系统,如果你按照传统刷入Twrp的方法刷入的话,那么你并不会获得一个永久的Twrp。所以需要先刷入一个临时的Twrp,在通过临时的Twrp来刷入永久的Twrp从而来获取Root权限。
Magisk是当前Android社区用来获取root权限的主流方式。同时,Magisk特殊的运作机制还赋予了它systemless的特质。systemless让Magisk一方面可以有针对性地隐藏root,甚至暂时隐藏Magisk本身。另一方面,挂载系统的存在,也让Magisk拥有了多样的模块化生态系统。
5.2、安装Magisk
adb install Magisk-v25.1.apk
5.3 创建一个上传目录
adb shell
cd sdcard/download
exit
5.4 通过 adb push 命令将文件上传到手机的 /sdcard/download/ 目录中:
adb push twrp-3.2.3-1-sailfish.img sdcard/download
adb push Move_Certificates-v1.9.zip sdcard/download
adb push LSPosed-v1.8.3-6552-zygisk-release.zip sdcard/download
adb push Magisk-v25.1.zip sdcard/download
adb reboot bootloader
5.5 刷入永久Twrp
adb reboot bootloader 上边用了就不用了
#安装fastboot
apt install fastboot
执行下面命令 fastboot boot *.img 来启动临时Twrp:
fastboot boot twrp-3.2.3-1-sailfish.img
之后,手机会进入到临时的Twrp中:
打开手机-->滑动下面的 Swipe to Allow Modifications 滑条,进入Twrp操作
页面:刷入永久Twrp
选择 Install – 找到目录 /sdcard/download/ – 选择 twrp*.zip
文件 – 弹出安装界面 – 直接滑动底部的滑条 Swipe to confirm Flash 安装:
这里也间接验证了为什么要选择 /sdcard 目录:点击 Install 按钮后,直接进入
的就是 /sdcard 目录,即只能操作这个目录。
等待进度条执行完毕,最后会显示 ...done 的提示。说明这一步执行完成。
安装好后,点击上方按钮返回主页,继续安装,千万不要重启
5.5 刷入Magisk-v25.1.zip
依照上面的安装步骤,继续安装 Magisk-v25.1.zip 文件。直到界面中提示 …done 时,说明安装完成。
安装好后重启到系统
如果让选择slot A或者slot B,根据current slot选择
6、Root完成
如果此刻手机能够正常开机,并且安装了Magisk软件
此时,手机打开debug调试模式,电脑执行adb shell和su两条指令,手机同意adb获取root权限,大功告成。
adb shell
sailfish:/ # whoami
root
sailfish:/ #
7、面具模块安装
7.1 两个模块
选择模块–>从本地安装–>下载–>安装下面两个模块,安完第一个不要重启继续安装下一个
Move_Certificates-v1.9.zip
LSPosed-v1.8.3-6552-zygisk-release.zip
两个都装完之后在设置勾选zygisk重启
工具包在公众号:瓜神学习网络安全
回复:安卓逆向学习及APK抓包