Charles安装和抓取https请求及常见问题解决方法

现在基本大部分网站都使用了https,所以要想抓到https的请求,首要任务是先有工具:charles、fiddler,先介绍下charles针对https请求的抓取方法,此方法兼容windows和mac用户(mac用户方法类似)。

1、 windows下安装charles,看到此文章的用户相信都已经安装了charles,如果还真的没安装,麻烦就自行搜索,进行安装了,建议从官网下载最新版本的Charles,打开charles(我使用的charles版本是3.11.4),再继续浏览。

 

注:Charles破解:https://www.zzzmode.com/mytools/charles/  ,非常好用,墙裂推荐!

2、 ok,charles已准备完成,刚安装好的Charles是不能抓取https的请求的,如果要抓取https请求,就要先安装证书,接下来就要配置charles证书,如下:

之后会弹出安装证书:

 

点击安装,一路下一步,直到提示“导入成功”

 

此时证书还是不被信任的,让不信任变成信任:打开IE浏览器—>工具—>Internet选项—>内容—>证书—>把中级证书颁发机构中的charles证书导出来—>再把导出来的证书导入到受信任的根证书颁发机构中。这样就ok了。

谷歌信任证书路径:设置—>隐私设置和安全性→管理证书,该方法也是弹出IE那个证书管理

 

 

3、 在移动设备上配置手机代理并安装证书

在手机上设置代理:设置—>无线网络,设置服务器ip和端口号:

 

然后,手机安装证书:

会弹出一个提示框,如下:

 

然后手机浏览器输入如上地址:http://charlesproxy.com/getssl会弹出如下页面:

现在下载地址已改为 chls.pro/ssl

点击安装即可,安装完成后就变成已验证,如下:

接下来需要设置信任证书,在手机设置→关于本机→证书信任设置里信任该证书

 

需要说明一点,多台电脑如果想抓包同一个IOS手机,需要手机通过这几台电脑分别安装对应电脑的证书。

下面以访问百度wap站点为例:

上图看到,访问百度wap站点还是看不到https的请求数据,下面还需要再继续配置:

点击SSL Proxying Settings,弹出下面的框,输入Host填写要抓取的ip或域名,port填写443即可。

设置完成后,重新方位百度wap站点就可以抓取到https请求了

 

最近发现ios使用charles进行https的mock 会提示客户端证书有误。请遇到的同学按照charles上的help安装手机证书后,在ios设备的设置→通用→关于本机→证书信任设置 里面启用完全信任Charles证书,亲测可解决。 有遇到的同学可以试试

最近发现有人在安装完Charles后抓取请求是没有response返回值,如下图:

遇到这种情况时按照下图所示方法更改下配置即可

以上,亲测可解决(2017-12-21)~~

转载至

posted @ 2021-07-17 20:37  R-Bear  阅读(1919)  评论(0编辑  收藏  举报