https://www.cnblogs.com/R-bear/p/7508133.html
一:Fidder介绍
Fidder是web端比较易用的调试工具;它能够记录所有客户端、服务端的http、https的请求、响应;支持我们监视、设置断点,甚至是修改请求、响应的数据。
二:Fidder的功能
用来抓包、用来接口测试;
三:Fidder的页面介绍
四:HTTPS介绍
HTTPS的协议:
客户 ---------------------- ----------------->服务端(手里有CA证书)
<-------------返回证书和公钥--------- ---------
客户端这边验证证书,并搞一个对称秘钥- --------------------- ----------------->
用本地公钥解密证书拿到服务器公钥;用公钥加密秘钥;发送加密后的秘钥 (服务端用公钥解密)
五:Fidder工作原理
第一步, fiddler向服务器发送请求进行握手, 获取到服务器的CA证书, 用根证书公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。
第二步, fiddler伪造自己的CA证书, 冒充服务器证书传递给客户端浏览器, 客户端浏览器做跟fiddler一样的事。
第三步, 客户端浏览器生成https通信用的对称密钥, 用fiddler伪造的证书公钥加密后传递给服务器, 被fiddler截获。
第四步, fiddler将截获的密文用自己伪造证书的私钥解开, 获得https通信用的对称密钥。
第五步, fiddler将对称密钥用服务器证书公钥加密传递给服务器, 服务器用私钥解开后建立信任, 握手完成, 用对称密钥加密消息, 开始通信。
第六步, fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次加密, 发送给客户端浏览器。
第七步, 客户端向服务器发送消息, 用对称密钥加密, 被fidller截获后, 解密获得明文。