监控iOS HTTPS网络流量

为了探索Apple的“查找我的朋友” API,我被引导监视来自我的iPhone 6s的网络请求,并实际上找到一些相当有趣的响应。

对于本指南,我已使用Mac OSX和iPhone 6s的Charles应用程序,尽管本指南和Charles应用程序可以应用于任何其他OS和硬件。

使用说明

步骤1:下载

在https://www.charlesproxy.com/cn/download/上下载副本并安装在您的计算机上。 请注意,此应用程序的价格为50美元(包括4个许可),但可以免费试用30天。

首次运行时,您将开始看到SSL请求以其加密形式发送,我们将需要对自己执行SSL“中间人攻击”以查看未加密的数据

步骤2:在Mac上安装根证书颁发机构(CA)

去:

 帮助> SSL代理>保存Charles Root证书 

双击安装证书,这将打开“钥匙串访问”,然后搜索“ Charles Proxy CA”,右键单击证书>“获取信息”,打开“信任”菜单,然后从下拉列表中选择“使用此证书时”为“永远信任”。

返回到Charles App并转到菜单

 代理> SSL代理设置... 

将主机“ *”和端口“ *”添加到“位置”列表。 确保重新启动浏览器 ,使其现在使用新的根证书。

这将允许您监视Charles在计算机上的SSL请求!

步骤3:设定手机

您将需要通过电子邮件将上面保存的证书发送到iOS设备上的有效电子邮件帐户, 使用Apple Mail App(不幸的是,未安装Safari中建议的http://chls.pro/ssl不会安装证书)。 单击电子邮件中的附加证书,然后将显示以下视图,安装配置文件:

接下来,找出您计算机的IP(将在网络设置中),并确保您的iOS和台式机计算机设备都连接到同一网络,然后导航到

 设置应用> Wi-Fi> WifiName设置> HTTP代理>手动 

然后输入服务器:10.xxx(在上面找到计算机的本地地址)和端口:8888

然后回到Charles App并在弹出窗口中单击“允许”以寻求许可

现在,您应该看到来自设备的请求!