Fiddler抓包原理

一、Fidder适用范围

  • 只能抓取HTTP、HTTPS数据包

二、原理

在这里插入图片描述
在了解Fiddler解密https的原理之前,我们首先要知道标准的https通信原理。
https://bravoing.github.io/2019/12/16/HTTPS%E5%8E%9F%E7%90%86/

了解以上常识后我们再看Fiddler解密https的过程其实不难:

客户端发起请求,中间人(Fiddler)会拦截来自客户端的请求,并将伪造的ca证书派发给客户端。同时Fiddler向服务器请求,获得服务器的ca证书。

客户端接收到来自中间人(Fiddler)的证书,还傻傻的以为这个证书是来自服务器的,并且使用证书里的公钥(其实是Fiddler的公钥)对生成的通信秘钥(对称密钥)加密,发送给服务器。可怜的是这个数据包也会被中间人(Fiddler)拦截。

中间人(Fiddler)使用自己的私钥将数据包解密,很轻松地得到了通信秘钥。之后使用服务器的RSA公钥对通信密钥加密后传输给服务器。

服务器接收到“客户端”(其实是Fiddler)发送给自己的密钥,使用RSA私钥解密得到明文密钥后,建立信任。握手完成。使用对称密钥加密消息, 开始通信。

后面的事情大家应该就明白了,由于Fiddler持有通信秘钥,客户端和服务器的通信对其始终是透明的。

三、Fiddler代理服务器(中间人)

  • 既然是主机,则必有地址,此地址为127.0.0.1 端口8888
  • Fiddler开启后打开IE,其PROXY自动变为代理地址,但是火狐等需要手动设置
    在这里插入图片描述
  • 浏览器退出,则自动注销代理,并不会影响使用。但是若Fiddler非正常退出,导致浏览器的代理服务器地址没有注销,会造成网页打不开。(理由:此时端口还在侦听,但代理服务器不能将请求发给真正服务器)
    所有我们要手动将浏览器的代理关掉。

四、Fiddler证书配置

Tools–Fiddler Options–HTTPS–Action–Trust Root Certificate

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值