2016-08-22 92 views
0

我一直在牆上撞牆,現在試圖讓Fiddler解密我支持的其中一個Web應用程序的通信。Fiddler - 從Web應用程序中捕獲HTTPS流量

版本

的Fiddler:4.6.2.3

操作系統:Windows 2012 R2

.NET:4.6

設置

解密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> 

我得到的提琴手日誌中的錯誤是:

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

我掃描的F IRST端點拋出錯誤,但是需要記住的是小提琴手無法建立握手與任何HTTPS端點:

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"; 
    } 

沒有成功。我很茫然。爲什麼服務器可以建立握手而提琴手不能?所有未加密的流量都被捕獲而沒有問題,但我似乎無法獲得HTTPS解密以發揮出色。

在這一點上,任何見識或幫助將不勝感激。

謝謝!

+0

如果您不是新鮮的Fiddler用戶,則SSL配置可能已過時。在HTTPS配置頁面上,執行操作 - >重置所有證書。 – Robert

+0

現在試了幾次,不幸的是沒有改變。 – user2735454

回答

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

相關問題