web-dev-qa-db-ja.com

Fiddlerが復号化できるのにHTTPSを使用する理由

FiddlerがHTTPSトラフィックを解読できることを発見しました。

たとえば、HTTPSを使用してlocalhostにWebサイトを展開しました。 Fiddlerでデータパケットを調べると、解読するオプションがあるため、すべての情報を表示できました。

私の質問は、Fiddlerが簡単に復号化できるのに、なぜHTTPSを使用するのですか?

29
Joe Borg

FiddlerはMITMテクニックを実行します。

動作させるには、証明書を信頼する必要があります。

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

そうしないと、何も解読されません...

Fiddler2はHTTPSトラフィックをデバッグできますか

A:Fiddler2は、HTTPインターセプトに対する「中間者」アプローチに依存しています。 Webブラウザにとって、Fiddler2は安全なWebサーバーであると主張し、Webサーバーにとって、Fiddler2はWebブラウザを模倣しています。 Webサーバーのふりをするために、Fiddler2はHTTPS証明書を動的に生成します。

Fiddlerの証明書はWebブラウザーによって信頼されていません(Fiddlerは信頼されたルート証明機関ではないため)。したがって、Fiddler2がトラフィックをインターセプトしている間、ブラウザーにHTTPSエラーメッセージが表示されます[...]

32
Andrea Ligios

HTTPSトラフィックを復号化するには、最初にFiddlerのルート証明書を「信頼済み/ルート証明書」リストにインストールする必要があります。 Fiddlerのルート証明書は、[〜#〜] not [〜#〜]デフォルトでオペレーティングシステムに付属するルート証明書です。 OSは通常、これをインストールしようとすると警告を出します。

そうすることで、Fiddlerのルート証明書によって署名された証明書を明示的に信頼し始めます。 httpsリクエストを作成すると、Fiddlerが中間者攻撃を実行します。

https://google.com の形式でリクエストを行うとします。 Fiddlerは実際のGoogleサーバーとして機能し、Google.comのダミー証明書を作成し、Fiddlerのルート証明書を使用して署名します。 Fiddlerによって署名されたこのdummy証明書を受け取ります。 Fiddlerのルート証明書が信頼できる証明書に含まれているため、この証明書はデバイスの検証に合格します。これで、デバイスは安全なHTTPS接続を介してFiddlerとの通信を開始します。 Fiddlerは、メッセージをGoogle.comに中継し、あなたに戻します。もちろん、Fiddlerはそれらを復号化できます。

FiddlerからGoogleへのトラフィックは、2番目のセキュアhttpsチャネルを介して発生することに注意してください。

したがって、httpsが提供するセキュリティについて心配する必要はありません。

11
Ruchira Randana