工作原理:

fiddler,原理是在本机开启了一个http代理服务器,默认监听127.0.0.1:8888。

打开fiddler之后,会帮我们设置ie代理,虽然只设置了ie,但整个计算机都通过整个代理上网了,即使不使用ie浏览器。

打开fiddler之前:

打开fiddler之后:

关闭filddler后,自动注销代理。

 

https:

1、fiddler截获客户端浏览器发给服务端的请求,此刻还未建立握手。

2、fiddler向服务器发送请求进行握手,获取到服务器的CA证书,用根证书公钥进行解密,验证服务器数据签名,获取到服务器CA证书公钥。

3、fiddler伪造自己的CA证书,冒充服务器证书传给客户端浏览器,客户端浏览器做跟fiddler一样的事。

4、客户端浏览器生成https通信用的对称秘钥,用fiddler伪造的证书公钥加密后传给服务器,被fiddler截获。

5、 fiddler将截获的密文用自己伪造证书的私钥解开, 获得https通信用的对称密钥。

6、fiddler将对称密钥用服务器证书公钥加密传递给服务器, 服务器用私钥解开后建立信任, 握手完成, 用对称密钥加密消息, 开始通信。

7、fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次加密, 发送给客户端浏览器。

8、 客户端向服务器发送消息, 用对称密钥加密, 被fidller截获后, 解密获得明文。

由于fiddler一直拥有通信用对称密钥, 所以在整个https通信过程中信息对其透明。

 

 官方教程文档:

http://docs.telerik.com/fiddler/