前段时间为应对苹果App Store对网络请求必须为https的要求,公司专门立项对现有网络请求进行了https的支持和切换。
抓包工具比如Charles如果不进行相关的配置,是抓不到https的请求包的,怎么配置?
首先安装Charles,公司QA友情提供的安装包是:
Charles安装包下载地址:https://pan.baidu.com/s/1skHVzpN 密码: 1mra
安装后将charles.jar包替换安装目录lib下同名jar包
配置步骤如下:
1.PC端安装证书
1.1在Charles面板顶部导航栏,点击Help->SSL Proxying->Insall Charles Root Certificate,将弹出如下页面:
1.2 证书下载成功后会弹出下图提示框,点击安装证书:
1.3 在弹出的新页面中,选择“受信任的根证书办法机构”然后点击确定:
至此,PC端证书安装完毕。
1.4 捕获https协议请求。点击Charles面板顶部导航栏的Proxy->SSL Proxying Settings:
1.5 在弹出框中勾选Enable SSL Proxying然后点击Add。弹出下图对话框,Host 表示要抓取的 ip 地址或是链接,*代表捕获所有的请求,Port 填写 443 即可。
2.移动端安装证书
设置手机代理为电脑ip,打开手机浏览器,输入:charlesproxy.com/getssl 会弹出如下界面:
iOS:如下图,点击Install即可。
Andr:如下图:输入证书名(任意取个名字),点击确认设置完成。
至此,Charles就可以抓取手机上的https协议请求了。
对Andr手机来说,上面是理想情况。如果你在安装证书的过程中,没有出现上述输入证书页面,首先可以考虑换个手机浏览器。
如果换了浏览器,虽然出现了证书下载成功的提示,但是没出现上述输入证书页面,类似如下情况:
点击下载后,出现:
点击打开,出现:
此时说明证书已经下载成功了。打开手机设置->高级设置->安全->受信任的凭证,在用户Tab栏,可以看到Charles的证书文件。
点击,就会弹出上述的输入证书名称的页面了。
本文详细介绍如何使用Charles抓包工具捕获并分析HTTPS流量。包括在PC端和移动端安装证书的过程,以及如何配置Charles来捕获特定的HTTPS请求。
2834

被折叠的 条评论
为什么被折叠?



