Fiddler抓包安装使用教程

Posted 程序员超时空

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fiddler抓包安装使用教程相关的知识,希望对你有一定的参考价值。

Fiddler抓包安装使用教程

Fiddler 简介

Fidder是一款免费、灵活、操作简单、功能强大的HTTP代理工具(客户端和服务器之间的代理),是目前最常用的抓包工具之一。它能够记录客户端和服务器之间的所有请求,可以抓取所有的HTTP/HTTPS包、过滤会话、分析请求详细内容、伪造客户端请求、篡改服务器响应、重定向、网络限速、断点调试等。

Fiddler工作原理

客户端服务器进行消息交互时,HTTP客户端设置Fiddler作为代理,把HTTP请求发送给Fiddler,Fiddler再转发给服务器;服务器返回消息也是先返回给Fiddler,Fiddler再转发给客户端。Fiddler就相当于一个中间人,例如房东把房给管家,管家带租客去看房。这个“管家”就相当于Fiddler

下载与安装Fiddler

  • 官网下载地址:点击 fiddler下载 https://www.telerik.com/download/fiddler
  • 个人分享网盘下载地址:
    英文版:https://pan.baidu.com/s/1tiEaMfZHnnfTNlPnYf_EaA?pwd=w96k 提取码: w96k
    汉化版:https://pan.baidu.com/s/14NZmBMdIaPSkm53_WNemiA?pwd=ju7d 提取码: ju7d

下载安装完成后,双击文件夹中Fiddler.exe

弹出下面这个提示,不用管,点击“No”就行了

配置Fiddler

HTTPS证书安装

默认状态下,Fiddler只能监听HTTP请求。Fiddler不安装HTTPS证书,会无法抓取HTTPS请求包。
Tools–》Options–》HTTPS,勾选如下选项

两种安装证书方法

  1. 信任证书:Tools–》Options–》HTTPS–》Actions–》Trust Root Certificate
  • Reset All Certificates是重置证书
  1. Tools–》Options–》HTTPS–》Actions–》Trust Root Certificate to Desktop
    再去浏览器,将Fiddler的证书导入到受信任的证书;例如chrom-点击右上三个点–设置–安全和隐私设置–高级滑到最下–管理证书,导入选择桌面这个证书路径

再返回Fiddler会话列表,就可以看到成功抓取了HTTPS的数据包

如果依然抓取不到https数据包,如下选择MakeCert

  • 注意:如果访问浏览器页面Fiddler会话列表没有请求数据,检查一下有没有打开File–》Capture Traffic,关闭是不会抓取数据包的

设置过滤项

根据目标主机地址过滤

表示仅抓取下面地址的消息

输入想要抓取的HTTP消息目标地址,用分号隔开,*可以作为通配符,点击“Changers not yet saved ”保存生效

通过URL中关键字符过滤

表示至抓取url中包含该关键字的消息,比如做api接口测试,则输入关键字“api”

查看请求响应时间

  1. 直观的查看请求的响应时间Statistics

    2.在FiddlerScript代码添加后,点击Sava Script保存,左侧列表可直接看到响应时间

    public static BindUIColumn(“TimeTaken/ms”, 120)
    function TimeTaken(oS: Session):String
    var sResult = “0”;
    var t1_ms = oS.Timers.ClientBeginResponse.ToUniversalTime().Millisecond;
    var t1_m = oS.Timers.ClientBeginResponse.ToUniversalTime().Minute;
    var t1_s = oS.Timers.ClientBeginResponse.ToUniversalTime().Second;
    var t1 = t1_m601000 + t1_s*1000 + t1_ms ;

        var t2_ms = oS.Timers.ClientDoneRequest.ToUniversalTime().Millisecond;
        var t2_m = oS.Timers.ClientDoneRequest.ToUniversalTime().Minute;
        var t2_s = oS.Timers.ClientDoneRequest.ToUniversalTime().Second;
        var t2 = t2_m*60*1000 + t2_s*1000 + t2_ms ;
    
        if(t1 >= t2)
            var t3 =  t1 - t2;
            sResult = t3.toString();
        
        return sResult;
        
    

一键清理会话列表:ctrl+x / ctrl+a+delete / 选择X-点击Remove all

web抓包

例如随便打开一个网站,如下是登录

如果没有抓取返回消息,注意左上角是否勾选“File-Capture Traffic”,不勾选的话则不会抓取数据

配置手机抓包

抓取手机上的请求,需要在手机进行配置。苹果和安卓配置方法可能存在差异,但是配置方法都是差不多的。(我安卓和苹果都试过)

1、确保手机和运行Fiddler的电脑是同一局域网,电脑可以win+r,cmd命令:ipconfig 查看电脑IP或者在fiddler中查看,鼠标放在右上角Online中即可显示电脑ip地址;手机可以通过wifi查看ip地址【例如:192.168.1.xxx】

2、设置Fiddler,允许远程机器连接自己,点击Tools-Options-Connections勾选如下

3、手机打开wifi,配置HTTP代理,选择手动,输入主机名称或IP地址,输入端口号8888

4、手机打开网址,或小程序、app可以发现Fiddler正在监控抓取数据,但是无法对HTTPS会话解密,需要在手机下载并安装Fiddler证书
4.1 打开手机自带浏览器,输入http://192.168.1.xxx:8888/FiddlerRoot.cer 访问(地址指的是代理服务器地址,也就是运行fiddler电脑地址)
4.2 如下点击第二行的FiddlerRoot certificate。随便输入一个证书名称,进行安装

4.3 有些手机系统不允许安装,可以去设置–安全与隐私–更多安全设置–从手机存储安装-CA证书(路径不一定都是这个,根据手机型号和系统)
例如苹果12如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/a361d8145d214ca39778218b202cd285.png

以上是关于Fiddler抓包安装使用教程的主要内容,如果未能解决你的问题,请参考以下文章

fiddler抓包详细教程--打断点(bpu)

fiddler抓包详细教程--设置过滤

Fiddler使用教程

抓包工具:Fiddler下载安装使用 教程

抓包工具:Fiddler下载安装使用 教程

fiddler抓包详细教程--接口测试