赞
踩
接:一、Fiddler抓包与HTTP协议(包含Fiddler工具介绍、抓包开始与否、抓包范围、Web代理、HTTP数据包结构分析以及抓不到包的情况等)_冷凝娇的博客-CSDN博客
上面链接系关于Fiddler工具、原理、HTTP请求及响应数据包的结构的笔记。
目录
四、Firefox浏览器安装证书、Windows本地查看已安装的证书
1.HTTP协议是不安全的,其数据包很容易被市面上的各种类型的嗅探工具拦截,甚至更改。
2.Web通信怎样保证其安全性呢?我们可以想到的方式:非对称加密(如:数据加密标准:DES),对称加密(RSA)等。简单解释一下对称加密、非对称加密吧。
client端 用来加密的 密钥和 server端 用来解密的 密钥是相同的,这叫对称加密;
client端 用来加密的 密钥 和 server端 用来解密的 密钥不同,因此叫非对称加密。分为一对密钥(公钥 public key、私钥 private key 的组合),使用公钥加密,必须使用私钥解密;
HTTPS就是HTTP加密后的协议。采用HTTPS的网站需要去数字证书认证机构(Certificate Authority,CA)申请证书。一般都与TLS或者SSL有关联(TLS和SSL是一种加密通道的规范),即:HTTPS=HTTP+TLS,或者SSL;
默认情况下,Fiddler不会捕捉HTTPS会话,需要进行设置。
操作步骤:Tool--->Fiddler Options--->HTTPS,选中“Decrypt HTTPS traffic”,之后,会弹出两个对话框,均一如既往的选择“Yes”;此外,还需要选择“Ignore server certificate errors”,即:忽略证书错误;下面系截图:
接下来,会有弹窗,是关于证书安装的提示,均选择“ok”;安装好证书之后,可以在Chrome浏览器中,访问https://www.baidu.com/ 尝试抓包,应该就可以成功抓取HTTPS了。
其实大家可以看到,有些地方Host项显示:Tunnel to 接下来,简单说明一下原因:Fiddler可以捕获HTTPS的握手验证请求;
HTTP Tunnel (也称 HTTP隧道、HTTP穿梭),它利用HTTP协议在即将通信的client与server间建立起一条“Tunnel”,然后Client和Server之间的通信都是在这条Tunnel的基础上实现了。简单的说:Fiddler在转发HTTPS请求时,会产生“CONNECT Tunnels”;
这些握手验证请求对我们Fiddler使用的目的,是没有作用的。所以可以隐藏掉。
隐藏方式:菜单栏---->Rules---->Hide COUNNECTs
可以看出,勾选后,即抓取的HTTPS数据包就没有了:Tunnel to
IE、Chrome等大部分应用都使用Windows证书库来验证证书,但是Firefox浏览器是自己维护证书列表,所以需要自己单独在浏览器中安装Fiddler证书。
首先导出证书:在Fiddler的菜单栏---》Tools--->Options---》HTTPS里,选择Actions--->Export Root Certificate to Desktop
接下来,在Firefox浏览器中安装证书:选择工具---》选项---》隐私与安全---》证书
点击“查看证书”,打开证书管理器----》选择“证书机构”,点击【导入】,选择FiddlerRoot.rer,接下来全部选择“信任”。
在安装后,即可抓取Firefox浏览器发出的HTTPS会话了。当然,如果其他浏览器有类似的问题,也可以单独安装证书。
如何查看Windows本地安装的证书呢?
方式一:win+r ----> certmgr.msc
方式二:Fiddler的菜单栏中选择Tools---->Options----->HTTPS----->Actions---->Open Windows Certificate Manager
另,手机端正常连接
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。