fiddler原理及常用操作

一、fiddler工作原理
Fiddler是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888. 当Fiddler启动后将自己变成一个代理服务器,这个代理服务器默认监听127.0.0.1:8888.然后打开IE的时候,IE浏览器会以127.0.0.1:8。 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。那他是怎样的工作原理呢。

首先fiddler截获客户端浏览器发送给服务器的https请求, 此时还未建立握手。

第一步, fiddler向服务器发送请求进行握手, 获取到服务器的CA证书, 用根证书公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。
第二步, fiddler伪造自己的CA证书, 冒充服务器证书传递给客户端浏览器, 客户端浏览器做跟fiddler一样的事。
第三步, 客户端浏览器生成https通信用的对称密钥, 用fiddler伪造的证书公钥加密后传递给服务器, 被fiddler截获。
第四步, fiddler将截获的密文用自己伪造证书的私钥解开, 获得https通信用的对称密钥。
第五步, fiddler将对称密钥用服务器证书公钥加密传递给服务器, 服务器用私钥解开后建立信任, 握手完成, 用对称密钥加密消息, 开始通信。
第六步, fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次加密, 发送给客户端浏览器。
第七步, 客户端向服务器发送消息, 用对称密钥加密, 被fidller截获后, 解密获得明文。
由于fiddler一直拥有通信用对称密钥, 所以在整个https通信过程中信息对其透明。

二、fiddler联网设置
https://blog.csdn.net/g5703129/article/details/79441547

三.常用操作
1.过滤
不需要显示链接:勾选Hide if URL Contains ,在输入框中输入需要过滤的css、js、gif等等,每个中间用空格隔开。
只显示链接:勾选 show only if URL contains,在输入框中输入需要显示的域名
生效别忘了需要勾选use filters 和点击action 中run filterset now操作

2.拦截请求进行篡改
断某一请求:bpu。在命令行中输入“bpu url,回车”。取消拦截:在命令行中输入“bpu”,回车。
进入接口中可直接修改请求参数,点击继续,修改返回响应,使页面展示篡改的数据。

3.模拟弱网
点击Rules->Customize Rules
搜索m_SimulateModem,修改上下行延迟,延迟越大,网速越慢
保存修改后,勾选Rules->Performances->Simulate Modem Speeds,使设置生效

4.https拦截
第一步,需要安装https证书到手机上
第二步,开启https拦截,tools>>options>>https>>capture https connects

当APP做了禁止抓包时,手机代理开了https时会请求不到数据,需要关闭https拦截,才能正常显示https的代理请求到的数据。

补充一下,web端fiddler代理默认是用的系统代理(即IE/谷歌的代理选项),当代理异常时,会出现WEB请求失败的情况,需要自己手动关闭代理,同时WEB端的代理端口需要和fidder设置端口一致才能抓包。
fiddler抓包只能抓取发送出去的请求(即经过网络的请求,且只有部分协议能支持),至于接口内部的调用是抓取不到的,调用完返回的值才给到用户。
**

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值