u1timate
Published on 2021-12-26 / 1,038 Visits
0

安卓模拟器HTTPS burpsuite设置

我这里使用的逍遥模拟器为例

设置burpsuite

这里监听的端口为所有网卡的8080,当然你也可以根据具体的网卡监听指定的地址,后面会有介绍如何获取改地址
image.png

安装证书

注意安装证书根据安卓系统版本的不同,安装的方式也不同

安卓7.0以下版本安装

  • 首先需要知道Burpsuit监听的虚拟网卡地址,该网卡与模拟器在同一个虚拟网络中
    image.png
    这里的我的虚拟网卡地址为192.168.203.1
    在模拟器中打开浏览器直接访问http://192.168.203:8080,下载CA证书
    DC6D221B7B804B98A2F16B93C4DAF6B2.png
    PS: 安卓系统无法安装 .der 后缀的证书,所以需要用文件管理器更改下载的证书后缀为 .cer
    使用模拟自带的文件管理工具,修改证书后缀名为.cer,然后双击该文件
    D17DDD73E7DB428687C6A77657DDAF10.png
    即可完成证书安装

安卓7.0以上版本安装

PS:7.0以以上默认不信任用户自身安装的证书, 可能导致部分APP程序无法抓取到HTTPS流量

准备工作

在操作之前,首先确保本机环境可以使用adb,windows下载地址:(https://dl.google.com/android/repository/platform-tools-latest-windows.zip)

  • 尝试连接,这里以逍遥模拟器为例
    adb connect 127.0.0.1:21503
  • 确认连接是否成功
    adb devices
    出现以下结果表示连接成功
D:\platform-tools_r31.0.3-windows\platform-tools>adb devices
List of devices attached
127.0.0.1:21503 device

安装证书

  • 首先从burpsuit客户端导出 burpsuit 证书 cacert.der
  • 使用openssl命令将der格式转为pemopenssl x509 -inform DER -in cacert.der -out cacert.pem
  • 计算证书 MD5:openssl x509 -inform PEM -subject_hash_old -in cacert.pem | head -1,我这里证书计算结果为 9a5ba575
  • 修改证书名:mv cacert.pem 9a5ba575.0
  • 默认/system分区为 Read-only,执行以下三条即可解除限制、才可添加证书到 system分区
adb root  # 很多时候会发现用不了,需要 adb shell 后执行 " mount -o remount, rw /system ",复制完证书之后记得恢复 " mount -o remount, ro /system "
adb disable-verity 
adb reboot
  • 以上完成之后,重新挂载分区
    adb remount
  • 导入证书
    adb push ./9a5ba575.0 /system/etc/security/cacerts/
  • 给证书加权限并重启
adb shell # 进入shell
chmod 644 /system/etc/security/cacerts/9a5ba575.0
reboot
  • 完成证书安装
    证书安装后,进入系统设置-》无线网络-》长按wifi名称-》修改网络-》添加代理IP地址
    9E6DE03D1ACE4803892B492BF543CE71.png

27B5519E80BD44FDA02941E3D61888F8.png

  • 完成配置,测试访问百度,成功抓取
    8FF5B07411704F498AAEE5E2418A1655.png

参考

安卓模拟器+BURP 实现 app 抓包 - 1ndex- - 博客园 (cnblogs.com)