如何监控iOS/Android设备中的https/ssl流量

Amy*_*Amy 2 java ssl android ios swift

我希望看到以解密形式将内容发送到服务器的页面请求,这是用于某些调试.

如果需要调试jail break/rooting也没问题.

Dur*_*n.H 6

我建议你使用Charles.I我自己经常使用它,我发现它很容易使用.

你可以从这里安装Charles

  • 您必须使用Charles代理配置移动设备(iOS或Android)

  • 您必须在移动设备中安装Charles代理的SSL根证书,以便可以监控SSL流量

进行以下选择以查找具有端口号的Charles IP,您必须使用该端口号绑定设备以及必须在设备中安装的SSL CA的URL

帮助 - > SSL代理 - > 在移动设备或远程浏览器上安装无客户根证书

在此输入图像描述

记下带有端口号IP地址,并记下安装CAURL

在此输入图像描述

绑定iOS设备中的HTTP代理 - 转到设置 - > Wifi - >连接系统也共享的wifi热点 - 连接后向下滚动到当前的wifi并在HTTP代理中选择手动 - 输入服务器和端口中的IP和端口在那边

在此输入图像描述

这就是现在你与Charles Proxy连接,你可以监控所有的http流量

为了监控https流量.

在safari中输入提到的URL,它将显示安装提示,给出并安装它.

现在,Charles可以监控源自设备的SSL流量.但Charles不会显示所有站点的未加密SSL流量.您必须添加需要监控SSL流量的站点.

这是怎么做的

在Charles Make中选择以下内容.

代理 - > SSL代理设置

在此输入图像描述

单击" 添加",然后输入要为其监控流量的https站点的主机端口.

在此输入图像描述

在此输入图像描述

瞧!现在,您可以在Charles中查看https站点的加密流量.

访问该网站,您应该能够在Charles的侧栏上看到该URL,您应该能够在右侧看到未加密的流量!

更新

如果您使用的是iOS 10.3或更高版本,请打开Settings.app并导航到" 常规">"关于">"证书信任设置",然后找到Charles Proxy证书,并将其打开以启用它的完全信任,以便进行SSL代理.