Fiddler手机抓包工具说明

192 阅读3分钟

一、Fiddler是什么?

Fiddler 是位于客户端和服务器端的 HTTP 代理,目前最常用的 http 抓包工具之一,功能非常强大,是 Web 调试的利器。是开发人员和测试人员常用的工具。 Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信。当你启动了 Fiddler,正确地截取了 Web 请求。 下面是 Fiddler 的工作原理示意图:

image.png

二、为什么用Fiddler?

debug开发人员和测试人员必会的技能。

  1. 由于开发周期短,页面构建完成后,开发肯定是在加班加点做完,谁敢保证不是问题一大堆。遇到问题就需要排查请求过程。
  2. 项目测试期间或者上线后,必然会有很多离奇,甚至可以说是灵异的 BUG,是开发期间在无法预期的。有的 BUG 需要查看一些请求过程,这时候需要用到抓包工具。
  3. Fiddler 是一个 HTTP 调试代理,它能够记录所有的你电脑和互联网之间的 HTTP 通讯,Fiddler 也可以让你检查所有的 HTTP 通讯,设置断点,以及修改所有的“进出”的数据(指 Cookie/HTML/JS/CSS 等文件,这些都可以让任意修改)。

三、Fiddler怎么用?

1.电脑端设置

手机上的许多应用程序涉及个人信息,并使用安全的HTTPS进行加密。缺省情况下,Fiddler只捕获HTTP会话,而不捕获HTTPS数据包。导致打开fiddler后无法打开HTTPS网页。因此,要在手机上抓取程序,我们需要先在Fiddler上设置HTTPS数据包抓取。 设置:

  1. 打开工具(tools)->选择项(Options)->HTTPS
  2. 勾选上捕获 HTTPS 连接(Capture HTTPS CONNECTs)和 HTTPS 请求解密(Decrypt HTTPS traffic),另外两个选项也建议一起勾选,点击“确定”
  3. 重启后生效 image.png

2.Fiddler代理设置:

要捕获手机上的请求数据,您需要将手机连接到Fiddler代理,Fiddler代理在默认情况下不允许其他设备连接的。 设置:

  1. 打开工具(tools)->选择项(Options)->连接(Connections)
  2. 设置监听的端口号,可以任意自己设置一个。允许远程计算机连接,在弹出的提示中点击“确定”,其他剩余两个(使用客户端连接和重用服务器连接)也默认勾选。
  3. 重启后生效 image.png

3.查询装了Fiddler工具电脑的ip地址,ip地址可通诺cmd命令行,输入ipconfig查询

360截图20220517203434522.png

4.手机端设置

(1) 手机和装Fiddler的在同一局域网,我们设置的9999的端口,电脑能ping通手机。 最好是笔记本电脑和手机连同一WiFi很方便,我这里是使用笔记本开热点,手机连接笔记本热点。 (2) 手机连接和笔记本同一局域网后,设置手机的代理,输入代理的主机ip和端口号 例如:我的笔记本ip是 10.10.10.10 ,Fiddler设置的端口是9999

lADPJx8ZwnTlrAPNCWDNBDg_1080_2400.jpglADPJxf-xStYrTLNCWDNBDg_1080_2400.jpg (3) 修改后打开手机自带浏览器 输入地址 10.10.10.10:9999 获取到安装证书页 手机安装Fiddler证书 Screenshot_2022-05-17-20-45-40-60.jpg 点击fiddlerboot certificate,会自动下载安全证书。点击证书安装。 97c27050ebcf2376a41e483f134f6111_1919136-20210401142609723-1260575439.png 注:遇到证书无法安装的,可以去设置->WLAN->高级设置-安装证书 也可以全局搜索文件 FiddlerRoot.cer文件,并安装。 Fiddler上设置对应的过滤器(Filters),然后在手机上进行操作,Fiddler会话列表就会抓取对应请求,如下图所示: image.png 以上设置完毕后,就可以正常抓包了,双击抓到的链接就可以看详细请求信息。 image.png