web-dev-qa-db-ja.com

HTTPS接続のどの部分を明らかにできますか?

たとえば、公共のWiFi接続を使用してhttps://google.comブラウザーで、そのサイトをさらに数ページ閲覧します(Googleで検索を実行します)。

他の人(同じWiFi接続またはISPを使用している人など)が私がGoogleにアクセスしたことを表示できますか?どのGoogle検索を実行したかではなく、Googleにアクセスしたという事実だけです。

そうでない場合、私のブラウザはどのようにしてestablish Google検索とのHTTPS接続を行うことができますか?.

13
Šime Vidas

ホスト名は平文で送信されます。これは、HTTPSがサーバーへの接続後に確立されるトンネルであるためです。ホスト名は、盗聴者がさまざまな方法でスヌープするために使用できます。

  • DNSルックアップを実行しますが、これは常にクリアです。
  • TCP google.comのDNSによって返されるIPアドレスへの接続があります。
  • SNIの場合、HTTPS要求にはホスト名が含まれます。
  • TLSハンドシェイクの一部として、サーバーはホスト名を含むプレーンテキストで証明書を提供します。

パラメータを含むURLの残りの部分は平文で送信されないため、盗聴されることはありません。 Cookieを含むすべてのヘッダーも暗号化されて送信されます。ただし、攻撃者は通信のサイズを確認し、そこから結論を導き出すことができます。

23
Gerald Davis