私が公開Wi-Fiに接続していると仮定し、同じパケットにすべてのパケットを盗聴する悪意のあるユーザーがいるとしましょう。 今、このwifiを使って私のGmailアカウントにアクセスしようとしていると仮定しましょう。 私のブラウザはサーバとのSSL / TLSハンドシェイクを行い、暗号化と復号化に使用する鍵を取得します。
その悪意のあるユーザーがすべての着信および発信パケットを盗聴した場合。 彼は同じ鍵を計算し、暗号化されたトラフィックを読むことができますか、暗号化されたメッセージを私の名前でサーバーに送信することはできますか?HTTPSは公開されているホットスポットよりも安全です。 HTTPSで使用されるセキュリティレイヤであるTLSの設定時には、公開鍵と暗号化されたメッセージのみが送信されます(これらもルート証明書で署名されます)。 クライアントは公開鍵を使用してマスターシークレットを暗号化し、サーバーはその秘密鍵で復号化します。 すべてのデータは、各側で生成されたマスターシークレットと擬似乱数を使用する関数で暗号化されています。
このように、SSL / TLS自体は、「通常の」インターネットに比べて、公共のWiFi接続で脆弱ではありません。 オープンチャンネルで使用するように設計されています。
ただし、考慮すべき点はいくつかあります。
- 多くの場合、ユーザーはHTTPSサイトを直接参照せず、HTTPサイトから開始し、そこからリダイレクトします。 たとえば、
http://example.org/
://example.org/を参照し、[Email
]リンクをクリックすると、https://mail.example.org/
リダイレクトされhttps://mail.example.org/
。 元のHTTPページは暗号化されていないため、その悪意のあるユーザーはトラフィックを変更することができ、Email
リンクはHTTPSにリダイレクトされませんが、おそらく他の場所にリダイレクトされます。 たとえば、example.orgのホームページの[Email
リンクをクリックした場合、http://mail.exxxample.org/
に移動したことがhttp://mail.exxxample.org/
ますか? (例として)。 他の人がそうでないかもしれない。 - ユーザーが接続を乗っ取り、example.orgではなく自分の偽のSSL証明書を提供する場合、ブラウザにエラーが表示され、証明書が有効でないことが表示されます。 ただし、ほとんどのユーザーはこれをクリックするだけで、攻撃者がSSL経由でセキュリティ保護されたサイトにMITMできるようになります。
- 考慮すべきもう1つの側面は、公衆ホットスポットが安全に設定されていると仮定しないことです。 この質問が示すように 、pwnedルータはすべてあまりにも一般的であり、あなたのSSLと無関係に大きな損害を引き起こす可能性があります。
- マスタシークレットと擬似乱数によって署名されているため、データは安全です。
- マスタシークレットと疑似乱数はTLSハンドシェイクが発生したときに公開/秘密キー暗号化を使用するため安全です
- 公開鍵暗号化は以下の理由により安全です。
- 秘密鍵は秘密に保たれる
- 公開鍵暗号化は秘密鍵なしでは役に立たないように設計されています
- 公開鍵はルート証明書によって署名されているため正当であることが知られています。
- あなたのコンピュータに付属しています
- ブラウザの警告に注意してください。
- あなたのコンピュータに付属の証明書を信頼し、
- 信頼する証明書だけを認可するように注意します。ブラウザからのすべての要求とサーバーによって送信されたページが暗号化されるため、HTTPSを完全に超過したセッションはかなり安全です。 ただし、HTTPS経由でアクセスすると、多くのサイトでHTTPS経由の認証手順が実行され、残りのセッションではHTTPに戻されます。 したがって、パスワード自体は安全ですが、サーバーがそのセッションのためにあなたを識別するために使用するセッションIDは、ブラウザによってクリアに送信されます。 これにより、Webサーバーの負荷が軽減されます(暗号化/復号化はCPUを大量に消費するため)、サイトの安全性は低下します。 Gmailはセッション全体でHTTPSを使用するため安全ですが、Facebookや他の多くのサイトではそうではありません。
攻撃者が暗号化されていないワイヤレスネットワークを共有しているときに、 Firesheepなどのツールがユーザーのアカウントを乗っ取りできる仕組みです。
この攻撃から保護するには、VPNを使用してすべてのセッションデータを暗号化するか、WPA-PSKなどの強力なユーザーごとの暗号化を使用するネットワークのみを使用します(WEPはすべてのユーザーに同じキーを使用します。この攻撃からの保護を提供する)。