Android App 抓包
从 Android 7.0 开始,App 不再信任 User Certificates。如果需要对任意 APP 进行 https 抓包,必须先将设备进行 ROOT。本文介绍如何在 Android 7.0+设备上通过 Root 权限安装抓包证书,实现 APP 流量抓取。
设备 Root(以 Pixel 设备为例)
设备准备
- "Settings" -> "About phone", 连续点击"Build number",直到提示已进入开发者模式
- 进入开发者模式后,"Settings" -> "System" -> "Developer options", 打开 "OEM unlocking" 和 “USB debugging” 这两项
安装 android platform tools
- mac 系统可直接使用 homebrew 安装:
brew install android-platform-tools
- windows 系统下载并解压文件(下载地址),并配置环境变量
- 验证安装完成:
adb --version
,fastboot --version
安装 Google USB 驱动(只有 windows 系统需要)
下载驱动:https://developer.android.com/studio/run/win-usb
将设备连接到 windows,打开"设备管理器",找到设备,选择从驱动器安装驱动,选择下载的驱动包完成安装。
下载刷机包
在 https://developers.google.cn/android/images 找到机型对应的刷机包,下载并解压
刷机
- 将设备连接至电脑,确保设备连接正常:
adb devices
- 将设备重启至 bootloader:
adb reboot bootloader
- 确保设备在 bootloader 下连接正常:
fastboot devices
- 如果设备上显示 "Device state: locked",则需要解锁 bootloader:
fastboot flashing unlock
- 执行刷机包中的
flash-all
, 等待刷机完成
通过 Magisk 获取 root 权限
原理:Magisk 对刷机包中的 boot.img 进行 patch,在 bootloader 下刷入 patch 后的 img,就可以获得 root 权限。
- 下载 Magisk 并安装到设备:
adb install Magisk-v26.1.apk
- 打开 Magisk,如果 App 下方菜单中的 Superuser 不可点击,说明尚未获取 root 权限
- 将刷机包中的 boot.img 传到设备:
adb push boot.img sdcard/Download
- 点击 Magisk 中的 "Install", 选择接收到的 boot.img,安装后得到 patched 的 img 文件,例如 magisk_patched-26100_UdX9C.img
- 将 magisk_patched-*img 传回电脑:
adb pull sdcard/Download/magisk_patched-26100_UdX9C.img ./
- 重启设备至 bootloader:
adb reboot bootloader
- 将 magisk_patched-*.img 刷入设备:
fastboot flash boot ./magisk_patched-26100_UdX9C.img
- 刷入完成后重启设备:
fastboot reboot
- 打开 Magisk,如果 App 下方菜单中的 Superuser 可用,说明 root 成功
安装 movecert 模块
movecert 模块的作用:用户将 ssl 证书安装到 user store 后,重启设备,该模块会将证书移动到 system store。
- 下载 movecert 模块,并推送到设备:
adb push movecert-1.9.zip sdcard/Download
- 点击 Magisk 中的 "Install",安装 movecert-1.9.zip
- 点击 Magisk 下方菜单中的 Modules,确认安装成功
设备取消 Root
- 重新刷入原版 boot.img:
fastboot flash boot ./boot.img
- 锁定 bootloader:
fastboot flashing lock
评论
暂无评论,来发表第一条评论吧