fiddler抓包学习

本文主要介绍了Fiddler在Windows和Linux环境下的抓包工具特性,对比了Fiddler与Wireshark的区别,重点讲解了Fiddler的工作原理、安装配置、界面使用以及其在弱网测试、请求伪造、性能测试等方面的应用。
摘要由CSDN通过智能技术生成

抓包工具对比

windows抓包工具

1、Fiddler是在windows上运行的程序,专门用来捕获HTTP,HTTPS。
2、wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容。
如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark。

linux抓包工具

tcpdump抓包

fiddler原理

Fiddler是一种用于HTTP调试和网络流量捕获的代理服务器工具。它运行在客户端和服务器之间,拦截并记录进出应用程序的HTTP/HTTPS请求和响应数据。

工作原理如下:
1、客户端配置:首先,需要将客户端的代理设置为Fiddler的监听端口(默认为8888),以便将所有流量重定向到Fiddler。
2、代理拦截:当客户端发起HTTP/HTTPS请求时,请求会通过Fiddler作为代理服务器进行转发。
3、数据捕获与解析:Fiddler会拦截并记录所有进出应用程序的HTTP/HTTPS流量数据,包括请求头、请求体、响应头和响应体。
4、数据展示与分析:捕获的数据会在Fiddler界面中进行展示,以便用户查看和分析。用户可以查看每个请求的详细信息,并进行筛选、排序和搜索等操作。
5、请求修改与重放:在Fiddler中,用户可以修改请求数据、添加或删除请求头,然后将修改后的请求重新发送给服务器,从而实现对请求的调试和修改。
6、HTTPS解密:Fiddler可以使用自签名证书实现对HTTPS流量的解密,使得用户能够查看HTTPS请求和响应的明文内容。
总之,Fiddler通过拦截和记录应用程序的HTTP/HTTPS流量数据,提供了一个便捷的方式来调试、分析和修改网络请求。

fiddler安装与配置

fiddler安装
官网地址:https://www.telerik.com/fiddler
fiddler配置fiddler配置
在这里插入图片描述

fiddler界面熟悉

网络教程居多,不详细展开

fiddler用途

1、监听http/https的流量,可以截获从浏览器或者客户端软件向服务器发送的http/https请求;
2、对截获之后的请求,我们还能够查看请求中的内容,分析数据是否准确(Inspectors );
3、伪造请求,不仅可以伪造客户端的请求,还能够伪造服务器的响应(Composer,Breakpoint);
4、测试网站的性能(如:Statistics, Replay);
5、解密https的外部会话。因为https本身是一种加密的协议,通过fiddler我们可以进行解密操作;
6、自动化(半自动)收集处理信息(FiddlerScript);
7、提供第三方扩展插件(如:Burp-like Inspector),实现更多需求;
8、编码解码(TextWizard);

过滤请求

在这里插入图片描述

弱网测试

在这里插入图片描述
在这里插入图片描述
代码块如下,可进行编辑

        if (m_SimulateModem) {
            // Delay sends by 300ms per KB uploaded.
            oSession["request-trickle-delay"] = "300"; 
            // Delay receives by 150ms per KB downloaded.
            oSession["response-trickle-delay"] = "150"; 
        }

"request-trickle-delay"是上传,"response-trickle-delay"是下载,每上传/下载1KB 要delay 多久…这里的单位是毫秒。顺便一提,正常来讲,3个网段的下载速度是:
2G:150Kbps,折合下载速度15-20K/s;
3G:1-6Mbps,折合下载速度120K/s-600K/s
4G:10-100Mbps,折合下载速度1.5M/s-10M/s
修改完后,要重新启用规则,否则不会生效

截获并伪造客户端请求

1、fiddler可以只设置目标网站的过滤(use filters)
在这里插入图片描述
2、设置fiddler的截获规则,选择在请求前截获
在这里插入图片描述

3、在目标网站的登录页面准备登录,点击提交,即可关注fiddler中截获的请求
在这里插入图片描述
4、可以看到请求被截获
在这里插入图片描述
5、修改请求内容,运行请求
在这里插入图片描述
可以看到响应的内容被改变
在这里插入图片描述

伪造服务器响应

1、设置fiddler截获规则,选择响应后截获
在这里插入图片描述
2、在目标网站的登录页面准备登录,点击提交,即可关注fiddler中截获的请求(这步与请求前截获图片一致)
3、在截获的响应里修改内容后运行,可以看到返回给客户端的响应已经被修改
在这里插入图片描述
在这里插入图片描述

测试网站的性能(如:Statistics, Replay)

1、Statistics
在fiddler中的statistics面板选项,可以清楚的看到每个http请求的响应时间。
在overall elapsed中能看到http响应返回需要的响应时间。
在这里插入图片描述

  • ClientConnected:表示客户端和fiddler之间建立连接的时间
  • ClientBeginRequest:客户端把请求发给fiddler的时间
  • GotRequestHeaders:fiddler接收到客户端发送的请求头时间
  • ClientDoneRequest:客户端将请求完全发给fiddler的时间
  • DetermineGateway:确认网关使用时间
  • DNS Lookup:DNS解析时间
  • TCP/IPConnect:fiddler与服务器建联时间
  • HTTPSHandshake:Fiddler与服务器HTTPS握手使用使用时间
  • ServerConnected:Fiddler与服务器建联时间
  • FiddlerBegin Request:fiddler把请求发给服务器时间
  • ServerGotRequest:服务器接收完fiddler发送的整个请求的时间
  • ServerBeginResponse:fiddler接收到服务器发送的首个响应时间
  • GotResponseHeaders:fiddler接收到服务器返回第一个响应字节时间
  • ServerDoneResponse:服务器发送完毕响应时间(发送到fiddler)
  • ClientBeginResponse:fiddler开始发送响应给客户端的时间
  • ClientDoneResponse:fiddler发送完响应给客户端的时间
  • Overall Elapsed:总的耗时时间
  • Response Bytes(by content-type):响应的字节

2、replay
在这里插入图片描述

  • Reissue Requests:重发选中的请求
  • Reissue Unconditinally:无条件重发选中的请求
  • Reissue and eidt:重发并编辑,会打开一个加了断点的请求,可以进行请求和响应数据的修改
  • Reissue and verify:重发并验证,重新发送请求,并验证其请求结果,会自动加标识
  • Reissue Sequentially:重发序列,打开一个数量设置界面,设置需要重发多少次请求
  • Reissue from Composer:重发并打开composer界面,可以编辑或发送
  • Revisit in IE:在IE上发起这个请求
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值