返回
HTTPS抓包新方式:突破安卓7.0限制,畅享无忧
Android
2022-11-17 07:35:00
突破障碍,开启抓包之旅:在 Android 7.0 及以上版本中实现 HTTPS 抓包
摘要
在 Android 7.0 及以上版本中,系统对用户 CA 证书的信任机制发生了变化,导致传统的抓包工具无法直接使用。本指南将逐步指导您在 Android 设备中安装系统证书并实现 HTTPS 抓包,让您轻松获取 App 数据包,满足您的开发和测试需求。
准备工作
- MaGet: 一款用于管理 Android 证书的工具
- Fiddler: 一个流行的 HTTP 代理和抓包工具
- ADB: Android Debug Bridge,用于在计算机和 Android 设备之间建立连接
安装 MaGet
- 下载: 前往 MaGet 的 GitHub 页面并下载适用于您操作系统的版本。
- 安装: 双击安装程序并按照提示完成安装。
安装 Fiddler 证书
- 导出: 打开 Fiddler,点击“Tools”菜单,选择“Options”,在“HTTPS”选项卡中找到“Decrypt HTTPS traffic”下的“Export Root Certificate to Desktop”按钮,导出证书。
- 移动: 将导出的证书文件复制到您的 Android 设备。
在 Android 设备中安装证书
- 连接: 使用 USB 数据线将 Android 设备连接到计算机。
- 启用 ADB: 在计算机上打开终端或命令行窗口,输入
adb devices
启用 ADB。 - 安装: 输入命令
adb install -r -g /system/etc/security/cacerts/[证书文件名]
安装证书。
信任证书
- 打开设置: 在 Android 设备上打开“设置”应用。
- 找到证书: 依次点击“安全”>“设备管理”>“受信任的凭据”。
- 信任证书: 找到您刚刚安装的证书,点击它并选择“信任此证书”。
配置 Fiddler
- 设置代理: 在 Fiddler 中,点击“Tools”菜单,选择“Options”,在“Connections”选项卡中设置代理端口为一个未被占用的端口,如 8888。
抓取数据包
- 启动 Fiddler: 启动 Fiddler,确保它正在运行。
- 连接到代理: 在 Android 设备上,打开“设置”>“Wi-Fi”,找到您连接的 Wi-Fi 网络,点击它并选择“修改网络”。在“代理”部分,选择“手动”,输入 Fiddler 的 IP 地址和端口号,如 192.168.1.100:8888。
- 启用抓包: 在 Fiddler 中,点击“Capture”菜单,选择“Start Capture”。
常见问题解答
- 为什么我无法安装证书? 确保您已启用 ADB 并正确输入了命令。
- 为什么我无法连接到代理? 检查您在 Android 设备上设置的代理是否正确。
- 为什么我无法抓取 HTTPS 流量? 确保 Fiddler 正在运行,并且您的 Android 设备已信任抓包证书。
- 如何停止抓包? 在 Fiddler 中,点击“Capture”菜单,选择“Stop Capture”。
- 如何撤销对证书的信任? 在 Android 设备上,打开“设置”>“安全”>“设备管理”>“受信任的凭据”,找到抓包证书并取消选中“信任此证书”。
结论
通过遵循本文中的步骤,您现在可以在 Android 7.0 及以上版本中成功安装系统证书并实现 HTTPS 抓包。这将使您能够轻松地获取 App 数据包,分析和调试网络请求和响应,满足您的开发和测试需求。