模拟器抓包
1、环境
抓包工具:Http toolkit
模拟器:mumu模拟器(root权限、磁盘可写入权限)
2、流程
2.1、启动模拟器、启动抓包工具
2.2、模拟器配置代理
wifi->高级->手动代理->电脑ip:8000
2.3、安装证书
2.3.1、下载抓包工具的证书(anything->Export CA certificate)
2.3.2、桌面打开git Bash here
2.3.3、执行命令 openssl x509 -inform PEM -subject_hash_old -in /d/http-toolkit-ca-certificate.crt(/d/http-toolkit-ca-certificate.crt是证书的绝对路径)
2.3.4、获取hash值 一般是第一行的8个英文字符 如47f8012f
2.3.5、修改证书名为47f8012f.0
2.3.6、移动到模拟器的/system/etc/security/cacerts目录下 并改变文件权限为644(rw-r--r--)
2.4、打开网页即可查看流量
之后可在抓包工具看到Android Deivce via ADB亮起,可以关闭wifi的手动代理,点击抓包工具的ADB自动开启抓包
2.5、ADB
安装证书环节可以使用ADB推送,先到官网下载ADB:
https://developer.android.com/studio/releases/platform-tools#downloads
执行命令:
adb connect 127.0.0.1:16384 # 连接模拟器
adb root # 获取 Root 权限(成功提示:restarting adbd as root)
adb shell # 进入模拟器的命令行环境
mount | grep /system #获取结果 /dev/block/dm-0 on /system type ext4 (ro,seclabel,relatime)
umount /system #卸载挂载若提示 Device or resource busy,忽略此步,直接执行下一步强制挂载
mount -o rw,remount /dev/block/dm-0 /system #重新挂载 /system 为可读写(rw)
mount | grep /system #若输出包含 rw(如 ro,seclabel 变为 rw,seclabel),则挂载成功。
保持adb shell窗口 再打开一个命令行窗口
adb push http-toolkit-ca-certificate.crt /system/etc/security/cacerts/
chmod 644 /system/etc/security/cacerts/http-toolkit-ca-certificate.crt
#修改模拟器中的证书为上述git所获取到的名称