Fiddler工具使用-抓取https请求

本文介绍了如何使用Fiddler在iPhone和Android设备上进行HTTP/HTTPS请求的截获,包括准备工作、安装Fiddler证书、配置代理服务器等步骤,确保手机与Fiddler在同一网络内进行通信。
部署运行你感兴趣的模型镜像

Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获手机发出的HTTP/HTTPS请求,总结下Fiddler截获IPhone和Android发出的HTTP/HTTPS包,前提条件是:安装Fiddler的机器,跟Iphone、Android在同一个网络里, 否则手机不能把HTTP发送到Fiddler的机器上来。

PS:这里踩到过一个坑,手机上已经设置好代理,开启代理后,却发现手机上不了网,而且Fiddler没有请求过来,弄了半天,发现和电脑防火墙有关系。

一、准备工作

不论IPhone、Android,首先都需要配置Fiddler,打开Fiddler,Tools-> Fiddler Options(配置完后记得要重启Fiddler)。
选中"Decrpt HTTPS traffic",Fiddler就可以截获HTTPS请求
选中"Allow remote computers to connect",是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来,如图





二、IPhone上安装Fiddler证书

这一步是为了让Fiddler能捕获HTTPS请求。如果你只需要截获HTTP请求,可以忽略这一步
1. 首先要知道Fiddler所在的机器的IP地址:假如我安装了Fiddler的机器的IP地址是:192.168.1.104
2. 打开IPhone 的Safari,访问  http://192.168.1.104:8888, 点"FiddlerRoot certificate",然后安装证书




3. IPhone上配置Fiddler,打开IPhone,找到网络连接,打开HTTP代理,输入Fiddler所在机器的IP地址(比如192.168.1.104)以及Fiddler的端口号8888


三、Android上安装Fiddler证书

1. Android设置代理服务器,打开wifi设置页面,长按要连接的网络,在弹出的对话框中,选择“修改网络”,如图


2. 在接下来弹出的对话框中,勾选“显示高级选项”,在接下来显示的页面中,点击“代理”,选择“手动”,在“代理服务器主机名”和“代理服务器端口”中写上前面得到的地址和端口,最后点“保存”。


3. 导证书到Android设备
Fiddler本质上是一个HTTPS代理服务器,其自己带的证书显然不会在Android设备的受信任证书列表里。
有些应用程序会查看服务器端的证书是否是由受信任的根证书签名的,如果不是就直接跳出。
所以,为了保险起见,我们要将Fiddler代理服务器的证书导到Android设备上。
导入的过程非常简单,打开设备自带的浏览器,在地址栏中输入代理服务器的IP和端口,例如本例中我们会输入192.169.11.8:8888,进入之后会看到一个Fiddler提供的页面:


点击页面中的“FiddlerRoot certificate”链接,接着系统会弹出对话框:



输入一个证书名称,然后直接点“确定”就好了。

4. 最后,不得不提这种方法的一些优点和缺点。

优点:1)手机不需要root就可以抓包;     2)可以用真机抓包,有些程序是抗动态分析的,能够判断自己运行在模拟器中。

缺点:1)必须要用WiFi连接;     2)要抓包分析的应用程序必须自己支持代理服务器的设置。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

使用 Fiddler 抓取 HTTPS 协议的请求数据,需要进行一系列配置来启用对加密流量的解密支持。以下是详细的设置方法: ### 配置 Fiddler 以捕获 HTTPS 流量 1. **启用 HTTPS 解密** 打开 Fiddler,进入顶部菜单栏的 `Tools` -> `Options`,在弹出的窗口中切换到 `HTTPS` 标签页。在此页面上,勾选以下两个选项: - Capture HTTPS CONNECTs - Decrypt HTTPS traffic 勾选后会弹出一个提示框,告知 Fiddler 将生成一个唯一的根证书用于解密 HTTPS 流量。点击 `Yes` 确认继续[^4]。 2. **信任 Fiddler 的根证书** 当启用 HTTPS 解密功能时,Fiddler 会自动生成一个根证书(DO_NOT_TRUST_FiddlerRoot),并尝试将其安装到系统的受信任根证书颁发机构存储区。为了确保客户端(如浏览器、手机应用等)能够正常信任该证书,可能还需要手动将此证书添加到系统或设备的信任列表中。可以在 Fiddler 安装目录下的 `\FiddlerRoot.cer` 文件导出,并导入到目标环境的受信任根证书存储中[^3]。 3. **检查浏览器或客户端代理设置** 大多数现代浏览器和应用程序默认使用系统代理设置。如果希望这些程序的流量通过 Fiddler 进行代理,则应确保它们没有显式地绕过本地代理(例如设置了 no-proxy)。对于某些特定的应用,可能需要手动配置其代理为 `127.0.0.1:8888`,这是 Fiddler 默认监听的端口[^2]。 4. **处理 SSL/TLS 握手问题** 在某些情况下,尤其是当服务器使用了较新的 TLS 版本或者特殊的加密套件时,可能会遇到 SSL/TLS 握手失败的问题。可以通过调整 Fiddler 的 SSL 设置来解决这些问题,包括指定支持的 TLS 版本以及禁用不兼容的加密算法。此外,还可以查看 Fiddler 日志文件中的错误信息,以便更准确地定位问题所在[^1]。 5. **高级配置与调试技巧** 如果上述基本配置无法满足需求,可以进一步探索 Fiddler 提供的一些高级特性,比如自定义规则脚本(使用 JScript.NET 编写)、断点功能以及自动响应功能等。这些工具可以帮助更好地控制和分析网络请求。 ```csharp // 示例:FiddlerScript 示例代码片段,用于修改所有传出请求的 User-Agent public static class Handlers { public static void OnBeforeRequest(Session oSession) { // 修改所有请求的 User-Agent 为自定义值 oSession.oRequest["User-Agent"] = "MyCustomUserAgent/1.0"; } } ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值