我们使用浏览器或者客户端软件都要与外界进行通信,就必然会有数据的发送和接收,有时候需要对这些传递的数据进行分析,因此需要截获这些传递的数据。
其中对这些数据进行截获、重发、编辑、转存的过程叫做抓包。
Fiddler是一款常见的抓包分析工具,可以详细地对HTTP请求进行分析,并模拟对应的HTTP请求。
为什么选择Fiddler ?
1、本地化的工具,是一个使用本地 127.0.0.1:8888 的 HTTP 代理 (任何能够设置 HTTP 代理为 127.0.0.1:8888 的浏览器和应用程序都可以使用 Fiddler)
2、Fiddler本身对http协议支持较好,且操作简单容易上手
3、具有抓包和分析功能,省去了安装其他工具的必要
4、工具本身功能强大,如劫包、篡改数据、限速等
Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888.
当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。
下面就总结下使用抓取https协议的方法:
使用方法
1、fiddler的安装
先下载好安装包,环境准备好后开始安装:
操作步骤:I Agree>Install>OK 这个工具有一个反人类的东西就是安装完成没有自动在桌面生成快捷键,所以还需要在安装的时候注意安装路径并找到目录去手动创建快捷键。
工具主页面:
2、设置fiddler
打开fiddler,进入Tools-Fiddler Options,打开HTTPS页卡。勾选Capture HTTPS CONNECTs、Decrypt HTTPS traffic和ignore server certificate errors
配置完成后重启fiddler
3、安装证书
1)下载fiddler HTTPS证书后保存到电脑,打开Internet选项-内容页卡
打开UC浏览器 查看更多精彩图片
2)点击证书,然后导入之前下载的fiddler证书即可
4、手机端安装证书
1)Android端安装证书
将证书导入到存储盘中,进入系统设置-安全页面,点击从存储盘安装fiddler证书。安装完成后再将手机代理到fiddler即可抓取https包。
部分手机在代理访问https协议的时候会自动弹出安装证书的界面,可直接安装(大部分都要手动安装)
2)iOS端安装证书
iOS较麻烦,我也是参考网上的方法,将fiddler证书使用附件发送到邮箱。用Safari打开邮箱,下载证书后安装。如果有好的方法,再分享出来。
3)在网上看到一个安装证书较简单的方法
手机连上fiddler代理后,如代理服务器为:30.30.30.30,端口为8888。使用手机浏览器访问30.30.30.30:8888,会自动跳转到fiddler证书下载页面,如图
点击FiddlerRoot certificate即可安装