安卓10下愉快的使用BurpSuite抓包

如何在安卓10系统上愉快的抓包

前言

最近一直在做一些app相关的渗透测试,发现安卓模拟器环境总是会出现一些奇奇怪怪的问题,而且使用起来很不方便,就买了一台安卓机,于是便有了这边文章,记录下过程,也给可能会遇到同样问题的各位师傅提前踩坑,这里感谢T师傅在我遇到问题时给了我很多帮助。

前期准备

  1. 科学上网
  2. Google Pixel 3 Android 10(如果不是 Android 10 可以用下面的方法刷)
  3. adb 和 fastboot工具,需要下载Google 的SDK Platform-ToolS 独立软件包

Windows 安装 Platform-ToolS

下载windows 版本的sdk 然后解压

image-20220517091232835

将解压后的目录添加到系统环境变量,这样你就可以在任意的位置使用SDK平台工具

image-20220517092246289

image-20220517092735374

任意位置打开cmd窗口输入 adb 出现类似以下显示代表代表环境变量添加成功

image-20220517093010916

Mac 安装 Platform-ToolS

安装homebrew

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装Platform-Tools工具

brew cask install android-platform-tools

使用fastboot刷入安卓10

如果你是安卓10以下版本需要刷入安卓10,下载地址https://developers.google.com/android/images#blueline点link下载,如果你是其他手机型号请使用对应版本的包

image-20220517093851909

进入开发者模式

找到 设置—选项—关于手机—版本号—点击版本号8次,然后找到 设置—系统—高级 开发者选项----允许USB调试 ,将手机通过数据线连接到你的电脑即可

解锁OEM

命令行输入 adb reboot bootloader 使用音量上下键选择 调整到 Unlock the bootloader ,按下电源键确认,等待解锁完毕,重启

在这里插入图片描述

打开 开发者选项 OEM 为灰色显示引导加载程序已解锁代表成功解锁
在这里插入图片描述

最后进入到之前下载的Android10 包解压进入到包的目录下打开命令行窗口输入 ./flush-all.sh 等待刷好即可,windows用户使用.\flush-all.bat命令刷入。(如果想刷其他版本的安卓使用此方法同样适用)

ROOT安卓设备

目前主流获取root权限的方法是使用Magisk,下载地址https://github.com/topjohnwu/Magisk/releases/download/v23.0/Magisk-v23.0.apk 写这篇文章时最新的Magisk版本为v24.3我链接给出的是v23版本,试了最新的版本,不能用在线的功能,不信邪的师傅可以试试。

安装Magisk

1.直接使用adb install magisk.apk

2.手动将apk传到手机安装

ROOT

  1. 打开之前下载安卓10的那个包,将包里的这个压缩文件解压,将解压的包使用adb push boot.img /sdcard/Download/ 命令提取boot.img 到手机的download目录下

image-20220517102031196

image-20220517102937843

  1. 打开Magisk 选择最上面的安装----选择并修补一个文件----找到安卓的下载目录下的boot.img 等待修复完成,修复完成后同样会在download目录下生成一个magisk开头的img文件

  2. 打开电脑的命令行窗口使用adb pull /sdcard/Download/magisk_xxx.img 命令下载到电脑上

  3. 使用adb reboot bootloader 命令切换到 bootloader模式

  4. 由于pixel双分区,用命令确定当前是哪一个分区 fastboot getvar current-slot 我返回到是b 所以用命令fastboot flash boot_b magisk_xxx.img 命令刷入 。

  5. 重启开机 fastboot reboot

重启后就直接完成root 啦 ,验证一下

image-20220517103711889

愉快的抓包

由于Android 7版本及以上的系统,不再信任用户级的证书,只信任系统级的证书,所以如何将证书导入Android 10 的系统目录成了一个问题,网上很多教程都是通过mount 挂载 /system 目录为读写权限将证书导入,但这个方法我没成功过,这里我用的是magisk 模块的Move Certificates ,这个模块可以帮助你将用户证书自动导入到系统分区。

  1. 导出Burp证书,以DER格式导出证书

image-20220517110007062

  1. 转换证书格式,将der格式转换为pem格式 (或者重命名为cer)
openssl x509 -inform DER -in  burpsuite.der -out burpsuite.pem
  1. 将burp证书放入到手机
adb push burpsuite.pem /sdcard/Download
  1. 打开设置—安全—加密与凭据—从存储设备安装 选择之前导入的证书
  2. 安装Move Certificates

打开magisk在模块界面 搜索Move Certificates 点击安装 重启即可 或者去https://github.com/Magisk-Modules-Repo/movecert 手动下载zip 包 点击从本地安装,重启即可

在这里插入图片描述

  1. 验证下证书是否导入成功

设置—安全—加密与凭据—信任的凭据—系统 查看是否具有PortSwigger 证书

image-20220517111716851

到了这里 大部分的app 就都可以抓包了。

绕过SSL pinning

SSL pinning 是一种防止中间人攻击的技术,即服务端信任APP端的证书,其他代理证书服务端都不信任,导致app客户端无法进行数据交互,这里使用EdXpoed 框架中TrustMeAlready 框架去绕过。

TrustMeAlready 是一款需要root权限的xp框架,它能够防止软件检测抓包,保证抓包的可持续性能。

安装Riru框架

首先在magisk 安装Riru 这里需要用到v25.4.4版本 因为这是EdXposed框架支持的最高版本,下载zip后 从本地安装导入重启即可。

安装Edxposed框架

  1. 直接在模块中在线搜索 Riru-EdXposed 安装并重启
  2. 安装EdxposedManager apk

先下载apk 然后输入:

adb install EdxposedManager.apk

打开Edxposed 后可以看到框架已激活表示成功安装

image-20220517122125992

  1. 安装TrustMeAlready

首先下载apk,你也可以直接在Edxposed app 中在线搜索下载

https://github.com/ViRb3/TrustMeAlready/releases/download/v1.11/TrustMeAlready-v1.11-release.apk

adb install TrustMeAlready.apk
  1. 打开Edxposed app 点击左上角 选择模块 将TrustMeAlreay 激活

在这里插入图片描述

绕过Root检测

有些app会检测你的手机是否root ,特别是一些银行的app ,这会导致app无法使用或者打开不了闪退。

  1. 在Magisk 首页打开设置找到magiskhide点击开关,然后按照提示确定,再打开测试的app 就不会有安全提示了

image-20220517130956615

总结

最后,让我们来愉快的使用Burpsuite抓包吧。

猜你喜欢

转载自blog.csdn.net/qq_39819761/article/details/129939076