首页 文章

Fiddler - 从Web应用程序捕获HTTPS流量

提问于
浏览
0

我一直在撞墙上一段时间,现在试图让Fiddler解密我支持的一个网络应用程序的通信 .

Versions

提琴手:4.6.2.3

操作系统:Windows 2012 R2

.NET:4.6

Settings

解密HTTPS流量:已启用(...来自所有进程)

提琴手根证书:已安装(现在几次......)

Protocols: <client>;ssl3;tls1.0;tls1.1;tls1.2

在web.config中我添加了:

<system.net>
  <defaultProxy enabled="true">
  <proxy proxyaddress="http://127.0.0.1:8888" bypassonlocal="False"/>
  </defaultProxy>
</system.net>

我在Fiddler日志中得到的错误是:

The client and server cannot communicate, because they do not possess a common algorithm for pipe

我扫描了第一个抛出错误的 endpoints ,但请记住,fiddler无法与任何https endpoints Build 握手:

TLS 1      offered
TLS 1.1    offered
TLS 1.2    offered

经过一些研究后,我尝试将其添加到FiddlerScript中:

if (oSession.HTTPMethodIs("CONNECT") && oSession.HostnameIs("dev-wsv-OMITTED.OMITTED.ad"))
    { 
        oSession["x-OverrideSslProtocols"] = "tls1.0";
    }

没有成功 . 我不知所措 . 为什么服务器可以 Build 握手而Fiddler不能?捕获所有非加密流量没有问题,但我似乎无法让HTTPS解密发挥得很好 .

在此,我们将非常感谢您的任何见解或帮助 .

谢谢!

1 回答

  • 0

    我之前遇到过类似的问题 . 您似乎还没有使用Fiddler根证书创建密钥库 .

    第1步:导出证书
    enter image description here

    第2步:使用此证书创建密钥库

    keytool.exe -import -file C:\Users\<username>\Desktop\FiddlerRoot.cer -keystore FiddlerKeystore -alias Fiddler
    

    第3步:添加以下VM选项

    enter image description here

    那应该是它 .

    有关更多详细信息,请参阅this msdn blog .

相关问题