导语: 本文在mac系统上利用charles对chrome打开网页http和https抓包。也介绍对iOS手机对请求的http/https抓包。
下载和安装Charles,
官方下载最新版本:https://www.charlesproxy.com/download/
如下图,下载Mac OS版本
也可使用我下载好的:https://pan.baidu.com/s/1sl0gKFz
下载下来后直接安装
破解
Charles是收费的,打开时会有30天使用权限的提示如图
破解的话就是替换一个charles.jar,网上搜对应版本的破解jar文件很容易搜到。
也可使用我下载好的:https://pan.baidu.com/s/1o8M73CY
替换步骤如下
打开应用程序 -> 选择Charles -> 显示包内容
然后点击Contents->Java->将我们下载下来的charles.jar替换这里的charles.jar
重启Charles,就不会再提示30天使用期限了,破解完成如图
Mac HTTP抓包
打开Charles设置代理以后,就可以抓取Mac上的网络请求了
在可以网络请求之前,比较推荐的方式是在Chrome上装扩展工具SwitchyOmega,
设置好代理就可以抓http请求了。
抓Https请求
1、安装根证书:help - ssl proxying - install charles root certificate
这时候会弹出一个根证书界面,如果没有弹出,则可以去chrome,高级设置里面找
3、双击对应证书,打开简介,因为一开始是不被信任的,我们还能怎么办,当人是信任它啦
有些博客就说到这里,我嘞个去,还要配置啊:设置匹配规则,菜单栏 - proxy - ssl proxy settings
hsot为你要匹配的域名,*表示任意匹配
port为网页浏览端口号:填443
结果长这样,重启
最后:当然是看成功没有,不然前面不是白做了么
接下来看iOS上如何抓http请求
iOS设备抓取数据的一般步骤
iOS设备和Mac链接同一wifi
查看Mac的IP地址,系统偏好设置->网络就可以查看到了,
iOS设备上,设置连接wifi的代理服务器,服务器填上一步中获得的IP,即192.168.0.111,端口填8888:
打开Charles
iOS设备进行网络操作,Charles就可以抓取到了网络请求了
iOS HTTPS抓包
HTTPS抓包在HTTP抓包的基础上进行设置
设置前HTTP抓包:
image.png
设置后HTTPS抓包:
下面是在HTTP抓包基础上进行的HTTPS抓包:
** (1)安装SSL证书到手机设备 **
点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device
出现弹窗得到地址chls.pro/ssl
在手机Safari浏览器输入地址chls.pro/ssl,出现证书安装页面,点击安装手机设置有密码的输入密码进行安装
(注意:(1)设置好手机HTTP代理(2)电脑上Charles要开着。否则Safari浏览器输入这个网址chls.pro/ssl会安装不了证书)
(注:安装完以后如果想删除证书,点击通用->描述文件->选择描述文件->删除描述文件)
** (2)Charles设置Proxy **
Proxy -> SSL Proxying Settings...
勾选Enable SSL Proxying,点击Add
在手机中设置信任证书,通用-关于本机-证书信任设置(这步不设置可能会导致抓取的域名为unknow)
参考文章:
《抓包工具Charles的使用教程》https://www.cnblogs.com/jiayuchn-test/p/8875105.html
《Charles抓包入门(Mac/iOS,HTTP/HTTPS)》https://www.jianshu.com/p/e8dd1091d6d7
《Mac上使用Charles抓取https》https://www.cnblogs.com/youthsnail/p/9039305.html
网友评论