【转】fiddler抓包时出现了tunnel to ......443 解密HTTPS数据

转:

1、在抓取https的数据包时,fiddler会话栏目会显示“Tunnel to….443”的信息,这个是什么原因呢? 
connect表示https的握手(也就是认证信息,只要是https就要进行认证),只要不是满篇的Tunnel to….443,就没有任何问题。我们可以选择将这类信息进行隐藏。 
隐藏方法:菜单栏=》Rules=》选择Hide Connects。就可以隐藏了。

2、要解密HTTPS流量,还需要在移动设备上安装证书; 
Android、IOS:

3、PC端

  • 1、将之前的证书删除:打开系统证书管理器(运行=》certmgr.msc=》回车),然后出现管理器,将你之前生成的证书删除即可。
  • 2、用一个叫”FiddlerCertMaker.exe“的工具重新打了一个证书。你可以点击这里下载。(下载成功之后,直接双击运行即可)
  • 3、重新打开fiddler,使用chrome/ie输入”https://www.baidu.com/“,这回可以捕获https的消息并解密成功了。
  • 4、使用iOS远程连接fiddler的代理地址,在线安装证书成功后,使用原生浏览器访问“https://www.baidu.com/”,fiddler成功抓取到https的数据。
  • 5、fiddler抓Chrome的网页时,可能会提示连接不安全无法使用,在Chrome上安装插件SwitchySharp,在插件中选择通用设置—勾选快速切换—选择使用系统代理设置–ok了。因为fiddler会自动给浏览器设置一个代理127.0.0.1端口8888,并且记忆浏览器的代理设置,所有的请求先走fiddler代理,再走浏览器代理。如果使用插件,可能会直接屏蔽了fiddler的代理,因此无法监听到请求了。

4、其他

    • 1、chrome和ie使用的是系统代理,而火狐使用的是独立的一套代理系统,所以不管fiddler的开关”capturing“是否打开,都捕获不了火狐浏览器的请求。需要我们将火狐浏览器的代理设置设置为系统代理或者配置为”手工配置代理“
    • 2、火狐浏览器使用的证书管理也是独立的一套系统,而chrome和ie使用的是系统的证书代理,所以我们如果想要使用fiddler抓取火狐浏览器的https的数据包,则需要将fiddler的根证书导出到桌面,然后再导入到firefox的证书中。而我们使用chrome和ie的时候是不需要将证书导入导出的,因为fiddler的证书就安装在系统的证书管理中。
    • 3、如果在使用fiddler的过程中证书出现问题,可以尝试使用”FiddlerCertMaker.exe“重新打一下证书
    • 4、如果在使用安卓或者ios等出现https抓取不到数据的问题,如果在本机上安装”FiddlerCertMaker.exe”都不行,就尝试一下fiddler的另外一个插件“CertMaker 
      for iOS and Android ”这个插件可以在官方网站上进行下载。
上一篇:fiddler抓包时显示Tunnel to......443是怎么回事


下一篇:IOS 苹果手机fiddler抓包时出现了tunnel to 443 解决方案,亲测有效