charles(抓包软件)安装及使用

前言

本文内容及相关操作基于 MacOS

抓包软件

CharlesV4.6.1

证书安装

电脑安装证书

Help > SSL Proxying > Install Charles Root Certificate

手机安装证书

Help > SSL Proxying > Install Charles Root Certificate On a Mobile Device or Remote Browser

点击后会有如下提示 :

  • 当前配置代理的电脑的 IP:PORT
  • 使用手机浏览器访问 chls.pro/ssl 在手机上下载证书并安装
  • IOS系统如果系统版本高于10, 需要在 Settings > Generate > About > Certificate 对用户自行安装的证书进行授信,默认是不信任用户自行安装的证书的.

电脑端提示如何在手机上安装证书

手机端代理的配置

荣耀V20 为例 :

设置 > WLAN > 和电脑连接到同一个WIFI > 显示高级选线 > 代理 > 手动 > 服务器主机即为你电脑的IP,服务器端口配置成你设置的端口即可(参照手机安装证书时的提示)

这个时候如果一切顺利, 访问一下百度,在charles终究可以看到相关请求了

手机端WIFI配置

注意事项

首次连接电脑代理时,电脑端会有一个授权弹窗,请选择 Allow(允许) , 不要选择 Deny(禁止) , 如果误选了,可以在 Proxy > Access Control Settings... 将手机的IP手动加入授权列表. 如果新设备联入,不希望弹出授权弹窗, 可以去掉 Prompt to allow unauthorized connections 此选项默认是勾选的.

HTTPS流量代理

经过上面一系列配置,HTTP流量抓包已经没问题,但是app抓包时, Android 由于自身机制, HTTPS 流量无法抓取,显示 UNKNOWN, IOS 不存在此问题,此时需要如下方案解决

工具软件

  • 下载并安装 VirtualXposed , 最新版本不支持32位应用,需要支持32位应用可以降低下载的版本, 验证 Android 10 support 版本可以使用
  • 下载并安装 rustMeAlready

软件安装

按照上面的连接下载安装即可, 打开 VirtualXposed, 点击底部的 带六个点点的圆圈 , 第一次打开, 点击右下角的 + , 添加下载的 rustMeAlready , 添加成功后, 选择你要安装的APP, 选择好之后,点击 安装 ,安装成功之后, 重启VirtualXposed , 首页位置上滑, 可在列表中打开你已安装的应用

配置SSL

软件安装成功之后,抓包会发现流量依旧是加密的,因为还需要配置电脑的 charles :

Proxy > SSL Proxy Setting > 勾选Enable SSL Proxying

点击 左侧 Include 下方的 Add , 添加你想转包的域名即可, 支持 *通配符, 只配置一个 *, 所有 HTTPS 流量都会解析. 特定域名 HTTPS 流量不想处理,可以添加到 Exclude 中.

常用配置

代理端口的配置

charles默认的代理端口为 8888 , 此端口极容易被其他服务占用,通过如下路径配置:

Proxy > Proxy Setting > Proxies , 修改 Http Proxy 下的 Port 即可

远端代理

Tools > Map Remote > 勾选 Enable Map Remote , 点击 Add , 按提示添加配置即可。 同时支持配置的 导入与导出

本地代理

Tools > Map Remote > 勾选 Enable Map Remote , 点击 Add , 按提示添加配置即可。 同时支持配置的 导入与导出

注意: 此配置 Map From 配置规则与 远端代理 完全一致, 区别是 Map To 需要选择一个本地文件, 填入 文件全路径, 会用文件内容,最为请求的响应信息.


charles(抓包软件)安装及使用
http://www.zhangdeman.cn/archives/36babffb.html
作者
白茶清欢
发布于
2021年3月3日
许可协议