一、Fiddler简介

Fiddler是位于客户端和服务器端之间的代理,也是目前最常用的抓包工具之一 。打开Fiddler的时候,它会自动给你的电脑创建一个系统代理,默认监听端口为8888,作为客户端与服务器之间的桥梁,可以记录客户端和服务器之间的所有请求,可以针对特定的请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据。

Fiddler在退出的时候会自动关闭代理,如果Fiddler非正常退出会影响到网络无法访问,需要重新启动Fiddler再次关闭就可以继续访问网页了。

二、Fiddler下载及安装

1、Fiddler下载地址:https://www.telerik.com/download/fiddler

Android Fiddler 调试 fiddler apk_抓包

 2、运行FiddlerSetup.exe

Android Fiddler 调试 fiddler apk_主机名_02

3、安装Fiddler

Android Fiddler 调试 fiddler apk_抓包_03

 4、选择安装路径,点击install

Android Fiddler 调试 fiddler apk_抓包_04

5、安装完成

Android Fiddler 调试 fiddler apk_抓包_05

 6、进入安装下点击Fiddler.exe

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_06

三、Fiddler使用

1、Fiddler页面

Android Fiddler 调试 fiddler apk_抓包_07

 2、字段说明

File-->Capture Traffic:是否启动抓包,勾选后左下角显示Capturing则开始抓取,不勾选不抓取

 四、web端抓包

1、抓取HTTP协议

打开Fiddler工具,打开任意一个浏览器,输入想要抓取的网址。如:www.baidu.com

查看会话列表,选择其中一个会话,查看请求信息中Inspectors,查看详细数据

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_08

2、解析HTTPS加密请求

Android Fiddler 调试 fiddler apk_抓包_09

上图所示,请求左边是一个锁的样式,右边返回内容中提示了“This is a CONNECT tunnel, through which encrypted HTTPS traffic flows"

需要配置Fiddle来解析这些加密的请求,根据第二行那句“enable the Tools > Options > HTTPS > Decrypt HTTPS traffic option.”

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_10

 点击Actions-->Trust Root Certificate,选择yes就可以了

 

Android Fiddler 调试 fiddler apk_抓包_11

 

Android Fiddler 调试 fiddler apk_HTTPS_12

 3、过滤指定请求

点击右侧Filters-->勾选Use Filters

Android Fiddler 调试 fiddler apk_HTTPS_13

Hosts下面,第一个选项:空间过滤

  • No Zone Filter:不通过空间进行过滤,这个是分内网跟外网的
  • show only Intranet Hosts: 内网
  • show only Internet Hosts: 外网

 

Android Fiddler 调试 fiddler apk_抓包_14

第二个选项:主机名过滤

  • No Host Filter:不通过主机名过滤
  • Hide the following Hosts:隐藏不显示下边输入的主机名的请求
  • Show only the following Hosts:只显示下边输入的主机名的请求
  • Flag the following Hosts:标记下边输入的要过来的主机名的请求,黑色粗体标记

 

Android Fiddler 调试 fiddler apk_HTTPS_15

输入框:填写主机名,输入框中多个host时用分号分隔(输入框背景为黄色时,表示输入内容修改未保存)

 

Android Fiddler 调试 fiddler apk_HTTPS_16

Actions:要做什么操作,有几个选项:

  • Run Filterset now:马上执行过滤
  • Load Filterset:加载本地过滤设置文件
  • Save Filterset:保存过滤条件

 

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_17

点击Actions,选择Run Filterset now,则过滤出指定host请求,可以Save Filterset 保存一份,以备后续直接导入使用

Android Fiddler 调试 fiddler apk_主机名_18

 其它过滤方法

 

Android Fiddler 调试 fiddler apk_HTTPS_19

五、Fiddler手机抓包

要通过Fiddler对手机抓包,需要保证Fiddler所在的电脑和手机必须处在同一个局域网内,即连着同一个路由器

win10进入系统设置-->移动热点-->与其他设备共享我的Internet连接,选择开启,让手机连上电脑的热点

Android Fiddler 调试 fiddler apk_主机名_20

Android Fiddler 调试 fiddler apk_主机名_21

Fiddler配置连接信息,Tools-->Options-->Connections,设置代理端口是8888,勾选Allow remote computers to connect,点击ok

Android Fiddler 调试 fiddler apk_HTTPS_22

在Fiddler中就可以看到本机的无线网卡IP了,也可以cmd-->ipconfig查看

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_23

 

Android Fiddler 调试 fiddler apk_抓包_24

 手机端设置电脑的wifi,HTTP代理-->配置代理,改为手动,服务器为上图中的IP,端口是8888

Android Fiddler 调试 fiddler apk_主机名_25

 

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_26

 访问网页输入代理IP和端口,下载Fiddler的证书

Android Fiddler 调试 fiddler apk_主机名_27

  

Android Fiddler 调试 fiddler apk_HTTPS_28

 证书安装完成后,用手机访问应用时,就可以看到抓取到的数据包了

Android Fiddler 调试 fiddler apk_Android Fiddler 调试_29