青花瓷抓HTTPS数据

Charles抓包https接口使用指南

作为一名iOS攻城狮,如果你没有听说过青花瓷这款软件,我只能说你还是回家洗洗睡吧。

最近在写一个需求,服务端不知道怎么设计接口。我只好找来了一个又类似功能的app,想要一睹芳容。于是主角Charles软件开始登场,当我按照操作设置完成开始抓取数据的时候,结果却一无所获。这个拦路虎就是https了,以前曾经研究过https的抓包,于是就按照记忆中的操作设置一遍,结果仍是一无所获。后来换了一台9.3.2系统的测试机,竟然抓取到了数据(PS:最初使用的是10.3.2系统手机)。真是百思不得其姐,经过不断的尝试,终于发现了原因所在。

好久没写东西了,废话多了点。言归正传,直接上干活

1.Charles抓取http接口数据

这个资料网上一大堆,此处不再赘述。本着认真负责的态度我还是到网上找了一篇图文并茂的文章供大家参考 iOS使用Charles(青花瓷)抓包并篡改返回数据图文详解

值得一提的是,这篇文章中讲解的使用Charles修改返回数据,在调式过程中还是很有用的,感兴趣的可以看一下

2.Charles抓取https接口数据

概括来说https抓包只需要两步(PS:忽略了设置代理信息等步骤)

  • 安装相关证书
  • 配置环境
2.1安装相关证书

此处网上能够搜到的资源大多事给你提供了一个证书下载地址,根据我的操作,这是没有必要的。安装证书只需要一下几步:

  • 2.1.1.安装电脑证书
 
安装电脑证书

注意要在钥匙串中找到对应的证书,设置信任

  • 2.1.2.请求手机证书
 
Help-->SSL Proxying
 
Charles 3.10.2 版本界面
 
Charles 4.1.2 版本界面

在相关的手机中打开Safari软件,输入图片中默认的地址,手机会自动跳转到证书下载界面,按照提示安装即可

2.2配置相关环境
 
1.SSL Proxying Settings
 
2.设置可用状态以及抓取端口信息
 
3.添加端口

终于大功告成了,赶紧去试一下吧。什么10.0系统抓不到?好吧,忘记给大家划重点了,经过换了三个版本的Charles,无数次的尝试,我终于得出了结论:这个和Charles没有任何关系。。。。

那么究竟是什么原因那,重点来了:

粗心的你真的以为,你以为的就是你以为的么。。。

重点 :请看大屏幕

 
证书安装界面

你可曾注意到方框中的信息,就算注意到你可曾想过什么。

接下来到了解密的时候了:

 
iOS9.0 系统相关界面
 
iOS10.0 系统相关界面

不错谜底就在这里,iOS10安装证书描述文件以后,需要手动设置信任证书

 
iOS10.0 手动设置证书信任

终于大功告成,来看一下效果吧。

 
iOS10 抓取京东 https 接口信息
 
do or nothing
原文地址:https://www.cnblogs.com/LYW1993-1024/p/8194385.html