2013-03-06 36 views
23

我剛剛發現Fiddler可以解密HTTPS流量。爲什麼在Fiddler可以解密時使用HTTPS

例如,我使用HTTPS在本地主機上部署了一個網站。在檢查Fiddler中的數據包時,我能夠查看所有信息,因爲它有解密的選項。

我的問題是,爲什麼當Fiddler可以輕鬆解密時使用HTTPS?

+0

HTTPS可以防止客戶端和服務器之間的竊聽者。 – 2013-03-06 11:11:58

+0

@ColonelPanic我明白這一點。不過,我剛剛發現Fiddler可以輕鬆解密HTTPS。我想知道當Fiddler可以輕鬆解密它時使用HTTPS的意義何在? – 2013-03-06 11:13:27

+0

還是由於使用Fiddler解密的網站是從本地主機部署的? – 2013-03-06 11:13:56

回答

28

提琴手執行MITM技術。

要使其工作,你需要信任其證書:

http://www.fiddler2.com/fiddler/help/httpsdecryption.asp

如果你不這樣做,它不會解密什麼...

如何Fiddler2調試HTTPS流量

答:Fiddler2依靠「中間人」的方式來攔截HTTPS 。在您的網絡瀏覽器中,Fiddler2聲稱是安全的 網絡服務器,而對於Web服務器,Fiddler2模仿網絡瀏覽器。 爲了裝扮成Web服務器,Fiddler2動態地生成了一個HTTPS證書 。

提琴手的證書不是由你的網絡瀏覽器信任的(因爲 提琴手是不是一個受信任的根證書頒發機構),因此 而Fiddler2被截獲您的流量,你會在你的瀏覽器[見一個HTTPS錯誤 消息。 ..]

+1

因此,防止HTTPS解密的唯一方法不是首先信任證書。我的理解是否正確? – 2013-03-06 11:16:44

+1

讓我們說,用戶接受證書。我認爲小提琴手能夠解密這些信息是否正確? – 2013-03-06 11:19:18

+0

是的,因爲它聲稱是目的地;)如果你不信任它,你應該是安全的 – 2013-03-06 11:20:19

8

爲了解密HTTPS流量,您必須首先將Fiddler的根證書安裝到您的「受信任/根證書」列表中。提琴手的根證書是不是默認隨操作系統一起提供的根證書。操作系統通常會在您嘗試安裝時警告您。

爲此,您明確開始信任由Fiddler的根證書籤名的任何證書。當你發出一個https請求時,Fiddler將會和你一起執行一次中間人攻擊。

假設您以https://google.com的形式提出請求。現在,Fiddler將充當實際的Google服務器,並將爲Google.com創建一個虛擬證書並使用Fiddler的根證書進行簽名。您將收到此名已由Fiddler簽名的虛擬證書。此證書將通過設備的驗證,因爲Fiddler的根證書現在位於您的可信證書中。現在,您的設備將通過安全的HTTPS連接開始與Fiddler進行通信。 Fiddler會將您的消息轉發給Google.com併發回給您。當然Fiddler將能夠解密它們。

需要注意的是,從Fiddler到Google的流量將通過第二個Secure https渠道進行。

因此,不用擔心https提供的安全性。

相關問題