参考链接:
Charles 抓包使用教程 - MAC - 黒貓 - 博客园
部分APP无法代理抓包的原因及解决方法(flutter 抓包) - lulianqi15 - 博客园
建议最好从官网下载应用,1个月免费使用 ,
官网:
Download a Free Trial of Charles • Charles Web Debugging Proxy
参考链接:
然后使用注册码来激活,链接如下:
Charles破解工具
charles 连接手机可以参考 链接1,非常详细,珠玉在前,不在赘述;
***** 连接 步骤简述*****
1.下载charles后,苹果手机与电脑连接同一个网络,在 iPhone 的 “ 设置 ”–>“ 无线局域网 ” 中,可以看到当前连接的 wifi 名,通过点击右边的详情键,可以看到当前连接上的 wifi 的详细信息,包括 IP 地址,子网掩码等信息。在其最底部有「HTTP 代理」一项,我们将其切换成手动,然后填上 Charles 运行所在的电脑的 IP,以及端口号 8888,如下图所示:
2. 设置好之后,我们打开 iPhone 上的任意需要网络通讯的程序,就可以看到 Charles 弹出 iPhone 请求连接的确认菜单(如下图所示),点击 “Allow” 即可完成设置。
3.如果没有网络,检查代理端口号,WiFi出现 惊叹号为正常,看看 抓包工具是否点击了 Allow,或者换一个wifi 或者热点;实在不行在通用-传输和还原iPhone-还原-还原网络。
4.检查iPhone手机上 设置-VPN与设备管理-有没有charles 描述文件,如果没有从其他地方导入一份(比如电脑钥匙串导出成.pem 格式 共享到手机安装即可)
5.查看设置-关于手机--证书信任设置 有没有打开 证书信任开关
6 开始调试
***** 调试 步骤简述*****
如果你的APP使用的是http协议,那么到上一步就可以了;但是 如果你的APP 使用的是https协议的话,你还需要安装证书;
截取 Https 通讯信息
安装证书
如果你需要截取分析 Https 协议相关的内容。那么需要安装 Charles 的 CA 证书。具体步骤如下。
首先我们需要在 Mac 电脑上安装证书。点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate”,然后输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。如下图所示:
证书如下:
(根证书)
需要注意的是,即使是安装完证书之后,Charles 默认也并不截取 Https 网络通讯的信息,如果你想对截取某个网站上的所有 Https 网络请求,可以在该请求上右击,选择 SSL proxy,如下图所示:
这样,对于该 Host 的所有 SSL 请求可以被截取到了。
截取移动设备中的 Https 通讯信息
如果我们需要在 iOS 或 Android 机器上截取 Https 协议的通讯内容,还需要在手机上安装相应的证书。点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate on a Mobile Device or Remote Browser”,然后就可以看到 Charles 弹出的简单的安装教程。如下图所示:
按照我们之前说的教程,在设备上设置好 Charles 为代理后,在手机浏览器中访问地址:Charles Web Debugging Proxy • SSL CA Certificate installation,即可打开证书安装的界面,安装完证书后,就可以截取手机上的 Https 通讯内容了。不过同样需要注意,默认情况下 Charles 并不做截取,你还需要在要截取的网络请求上右击,选择 SSL proxy 菜单项。
****模拟慢速网络(参考链接1)****