日常记坑之fiddler不能抓到数据,解决tunnel to 443

【这里以不能在手机上抓到包为例】

前提条件:

1、已设置Fiddler的代理端口
  Tools –> Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即允许远程计算机连接Fiddler,

注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时要与fiddler的端口一致。

2、已设置解密HTTPS的网络数据
  Tools –> Options-> Https,勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors。
3、 手机与电脑在同一局域网下
  已勾选“显示高级选项”-> 代理 选择“手动” ->输入服务器主机名和服务器端口 ->IP选择“DHCP”->连接,即完成手机端设置代理操作,如下图所示:
注:服务器主机名:Fiddler所在电脑IP(即开启wifi后,在fiddler或cmd中看到的无线网卡IP地址)

服务器端口: Fiddler使用的端口(即Options-> Connections中设置的端口号)
4、手机已下载并安装Fiddler证书
  把WiFi设置为手动代理后,手机打开浏览器输入代理IP+端口号(即电脑的IP,也是手机设置代理时所设置的服务器主机名,这里的ip+端口号为192.168.XXX.XXX:8888),在手机浏览器中输入192.168.XXX.XXX:8888,进入fiddler echo service页面,下载Fiddler的证书,点击FiddlerRoot certificate,下载成功后安装,每个手机的安装步骤有所不同,请自行百度。
至此
  大部分解决方案都会说:设置完上面步骤后,即表明已设置完毕,此时用手机访问应用,就可以看到fiddler抓取到的数据包了
  
【可是我依然不能抓到包,,此刻的心情五味杂陈。。】
果然是冷静下来才能找到问题的根源,突然想到我的fiddler是不是设置了只抓某个地址的包,果断检查filters,果然勾选着,果然设置了只抓某个地址的包,,,嗯,总是被自己坑。。
-------------------------------续坑--------------------------
【这里是电脑不能抓到包】
问题:以小程序为例,有的小程序直接打不开提示:请求失败。
有的请求在fiddler中显示tunnel to 443
前提条件(Windows系统):
1、已设置Fiddler的代理端口
  Tools –> Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即允许远程计算机连接Fiddler,

注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时要与fiddler的端口一致。

2、已设置解密HTTPS的网络数据
  Tools –> Options-> Https,勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors。
 解决方案:
 经一番波折后发现,是因为未安装证书。
 在Tools –> Options-> Https中点击Actions->Trust Root Certificate,进行安装证书,重启fiddler,然后再抓包就可以看到内容 了。
 (如果是要使用浏览器,记得在浏览器中设置代理,这里就不多说了)

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: Fiddler是一款用于抓包和分析网络流量的工具。如果您想要在Fiddler中使用HTTPS协议进行抓包分析,则需要对Fiddler进行一些配置,使其能够与目标网站建立加密连接。 其中一个常见的问题是Fiddler无法通过隧道连接到443端口。这通常是由于系统代理设置的问题导致的。要解决这个问题,您可以尝试以下方法: 1. 在Fiddler中打开“Tools”菜单,选择“Options”,然后选择“Connections”选项卡。在该选项卡中,取消选中“Act as system proxy on startup”复选框。 2. 禁用或修改系统代理设置。在Windows操作系统中,您可以在“Internet选项”中找到代理设置,然后将其禁用或将代理地址和端口修改为与Fiddler相同的地址和端口。 3. 如果您使用的是HTTPS代理,请确保您已经安装了Fiddler的根证书。在Fiddler中,可以通过打开“Tools”菜单,选择“Options”,然后选择“HTTPS”选项卡来找到根证书的安装方法。 希望这些方法可以帮助您解决Fiddler隧道连接443端口的问题。 ### 回答2: 文本中提到“fiddler tunnel to 443 问题”,该问题是指在使用Fiddler抓包时,需要将端口号修改为443才能正常捕获HTTPS请求的问题。这个问题是由于HTTPS请求使用加密传输,而Fiddler默认只能捕获HTTP请求,因此需要通过修改端口号的方式来实现HTTPS请求的抓包。 首先,需要在Fiddler的“Tools”菜单下选择“Fiddler Options”,进入设置页面。在“HTTPS”选项卡下,勾选“Decrypt HTTPS traffic”选项,并点击“Export Root Certificate to Desktop”按钮,将证书导出到桌面以便之后的安装。 接着,需要将证书安装到本地信任证书库中。在Windows系统中,可以通过双击证书文件并按照提示操作来实现。安装成功后,需要重启Fiddler,并在“Tools”菜单下选择“Options”菜单中的“HTTPS”选项卡,勾选“Capture HTTPS CONNECTs”选项。 最后,需要在Fiddler的“Rules”菜单下选择“Customize Rules”,并添加以下代码: static function OnBeforeRequest(oSession: Session) { if (oSession.isHTTPS && oSession.uriContains("yourdomain.com")) { oSession["x-overrideHost"] = "yourdomain.com:443"; } } 这段代码的作用是将指定的域名的端口号改为443,以便Fiddler能够正常捕获HTTPS请求。在添加完上述代码后,保存并重启Fiddler即可。 总之,“fiddler tunnel to 443 问题”可以通过上述方法解决,从而实现对HTTPS请求的抓包。同时需要注意的是,由于HTTPS请求使用加密传输,因此在抓包时需要遵循相关法规和道德规范,切勿用于非法用途。 ### 回答3: Fiddler是一款广泛使用的抓包工具,可以用于监视HTTP请求和响应。有时候,我们需要在Fiddler上捕获加密的HTTPS流量,这时就需要使用Fiddlertunneling(隧道)功能。 默认情况下,在Fiddler不能直接抓取HTTPS流量。Fiddler使用的是自己生成的根证书来代理HTTPS流量,但大多数浏览器都不信任这个根证书,因此浏览器会提示安全警告。为了解决这个问题,Fiddler提供了一个tunneling(隧道)功能,用于将HTTPS流量通过HTTPS隧道转发到Fiddler中,从而避免了浏览器检测证书的问题。 在Fiddler中,打开Tools->Options,选择HTTPS选项卡,勾选"Decrypt HTTPS traffic"和"Ignore server certificate errors"选项,然后单击"Actions"按钮,选择"Export root certificate to desktop",将证书保存到桌面。接下来,需要将该根证书导入到操作系统的受信任根证书颁发机构中,以便浏览器可以信任它。然后,重启Fiddler,选择"Rules"选项卡,打开Customize rules文件,在OnBeforeRequest函数中添加以下代码: if (oSession.HTTPMethodIs("CONNECT") && oSession.HostnameIs("localhost:443")) { oSession["x-replywithtunnel"] = "FakeTunnel"; return; } 保存并重新加载Customize rules文件,Fiddler就可以开始抓取HTTPS流量了。 总之,使用Fiddlertunneling(隧道)功能,可以轻松捕获HTTPS流量,从而帮助我们分析和调试网站的安全性及性能。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值