【工具篇4】关于Fiddler的使用

222 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第2天,点击查看活动详情

工欲善其事必先利其器。对于工具,初步做到会用以及为什么这么用即可!

1. 概述

Fiddler是专用的代理服务器工具,用于调试来自浏览器等应用程序的Web流量,它能记录所有客户端和服务器的http和https请求,允许你监视、设置断点、甚至修改输入输出数据。

交互界面
image.png

工作原理
image.png

操作面板 image.png

image.png

2 手机抓包

手机抓包设置方法如下

2.1 配置Fiddler

  1. 打开软件,选择Tools->Options image.png

  2. 启用HTTPS流量解密
    在HTTPS选项卡中选中Decrypt HTTPS traffic 和Ignore server certificate errors(unsafe)两项 image.png

  3. 设置远程机器代理设置
    在Connections选项卡中,选中Allow remote computers to connect确保允许远程客户端连接,默认监听端口为8888,设置好了重启软件 image.png

2.2 配置Android设备

  1. 在电脑命令行中输入ipconfig,查看自己的ip地址 image.png

  2. 进入WLAN列表,进入当前连接热点详情,将代理改为手动,代理主机名为:电脑的IP地址,代理服务器端口为8888,如果本机电脑的8888端口已被占用,那填写一个未被占用的端口 image.png

2.3 解密HTTPS

  1. 手机浏览器输入:http://172.16.180.120:8888(该ip地址为设置的代理ip地址,即电脑ip地址),并搜索,下载FiddlerRoot certificate证书 image.png

确保Fiddler证书是通过BouncyCastle证书生成器生成的

  1. 证书下载完成后,进入手机设置,搜索“存储设备安装证书”,选择“从存储设备安装证书->CA证书”,选择机型,搜索fiddlerRoot,点击安装证书,然后即可开始抓包使用

image.png

3 请求与响应参数修改

3.1 请求参数修改

目前Android客户端与服务端,都是通过pb来进行传输数据的,pb的优点非常明显,但也存在无法阅读的问题,为了知道本机真实的请求数据,在此情况下,我们可以将pb进行解析,亦可以抓包将pb改为json重新进行请求,查看返回的结果

  1. 选中当前要更改的请求会话,如图右键选择Replay->Reissue and Edit E image.png

  2. 选择Inspectors->WebForms,比如这里我们可以将pb格式改为json格式进行请求

image.png

  1. 然后执行Run to Completion image.png

4 AutoResponder

当资源或服务不可用时,AutoResponder可以用来模拟来自服务的API响应,它可以配置延迟设置来模拟更真实的响应时间。

5 FiddlerScript

6 参考

官网文档:docs.telerik.com/fiddler/obs…