移动设备环境准备
下面的流程以Nexus 5X为例.
adb配置
- 从下述网址下载adb工具.
https://developer.android.google.cn/studio/releases/platform-tools?hl=zh_cn
- 配置adb环境变量.
|
|
刷机
需要确保已解锁OEM,然后开始下面的流程.
- 从下述网址中选择要刷入的Android版本对应的build ID
https://source.android.com/setup/start/build-numbers
这里我们选择的是android-8.1.0_r1对应的build ID为OPM1.171019.011.
- 从下述网址中找到准备刷入的设备对应的代号为上述build ID的镜像链接并下载.
https://developers.google.com/android/images
这里我们的准备刷入的设备型号为bullhead for Nexus 5X
|
|
- 校验SHA-256 Checksum,必须与官网一致.
|
|
- 解压.
|
|
- 进入bootloader界面.
|
|
- cd到刚解压的文件夹下,执行./flash-all.sh脚本.
上述流程完毕之后,手机就会重启进入初始化状态,在完成语言、WiFi以及在"开发者选项"中打开Usb调试选项后,一台新的测试机就诞生了.但在联网之后会发现测试机的系统时间与计算机时间不一致以及提示"此WLAN网络无法访问互联网",可通过以下命令解决:
|
|
Root
下面的两种Root方式,Magisk和SuperSU任选其一即可.
Magisk
- 安装Magisk,查看是否具有ramdisk.
https://github.com/topjohnwu/Magisk
- 如果有ramdisk,就从Rom包中提取boot.img,否则提取recovery.img
- 将提取出来的镜像传输到手机中.
|
|
- 在手机中打开Magisk选择上述镜像文件进行修补.
- 在PC上将上述修补后的镜像导出.
|
|
- 将修补后的镜像刷入手机中.
|
|
SuperSU
- 下载SuperSU并推送到手机的sdcard目录下.
https://supersuroot.org/download/
SR5-SuperSU-v2.82-SR5-20171001224502.zip
|
|
- 要使用SuperSu的方式进行Root,首先要安装Twrp.
Twrp是一个开放源码软件的定制Recover映像,而Recovery指的是一种可以对安卓机内部的数据或系统进行修改的模式(类似于Win PE),在Recovery里我们可以挂载磁盘,修改系统分区,使用adb命令等一系列功能.
- 下载自己机型对应的Twrp.
- 进入bootloader界面,将镜像刷进去.
|
|
-
进入recovey模式,稍等一会就会进入刚安装的Twrp系统.
-
进入Twrp界面后,滑动下方的"Swipe to Allow Modifications"按钮,进入Twrp主界面,然后点击"Install"按钮(默认进入sdcard目录),选择上面推进去的SuperSU压缩包,开始刷SuperSU.
完成上述步骤,手机重启以后就完成了root.
Kali NetHunter
Kali NetHunter是第一个针对移动设备的开源Android渗透测试平台,允许受支持的设备访问Kali工具集,可以执行在桌面端Kali上执行的一切命令,另外Kali NetHunter对Android的修改主要关于Android内核方面的内容,对平时的使用几乎不会产生任何影响,十分值得每一个Android逆向人员拥有.
刷机
-
需要先使用上述SuperSU的方式完成Root.
-
在官网下载Kali NetHunter.
https://www.kali.org/get-kali/#kali-mobile
nethunter-2022.2b-bullhead-oreo-kalifs-full.zip.torrent
这里会发现Nexus 5X的设备只支持Oreo,而Oreo是Android8的代码,这与我们上面刷的系统镜像是一致的.
- 将下载的压缩包推送到手机的sdcard目录下
|
|
- 进入bootloader界面.
|
|
- 进入Twrp界面,单击"Install"按钮,选择上面推进去的压缩包,开始刷Kali NetHunter.
等待上述步骤执行完毕,手机重启之后,就完成了Kali NetHunter的刷机.
接下里就会发现,桌面多了NetHunter、NetHunter KeX、NetHunter终端等App.
开启SSH
此时可通过手机上的NetHunter终端App运行各种Android原生不支持的Linux命令,但在手机上使用终端命令,终究觉得屏幕过小,此时我们可以通过SSH连接手机,在PC上操作手机.
- 打开手机端的NetHunter,单击侧边栏的Kali Services.
- 勾选RunOnChrootStart.
- 接下来就可以在PC上利用SSH工具如XShell,来连接手机,运行Linux命令了.
指定手机端的IP,以及默认的账号密码root/toor即可
图形化界面
Kali NetHunter为Android内置了一个图形化界面,在PC上可以通过VNC Viewer进行连接.
- 打开手机端的NetHunter,单击侧边栏的Kex Manager.
- 单击"SETUP LOCAL SERVER"按钮,设置VNC Viewer的密码,然后选择root用户,最后单击"START SERVER"按钮启动SERVER.
- 使用VNC Viewer进行连接,输入手机端的IP和端口(端口号为1),然后输入上面设置的密码就可以连接成功了.