クライアントがhttps://
ではなくhttp://
と入力した場合でも、SSLストリップ攻撃は発生しますか?
攻撃者がHTTPリクエストを監視し、HTTPSにリダイレクトできることを読みました。しかし、HTTPSリクエストも悪用できるかどうか知りたいです。
いいえ、それは不可能です。ユーザーが「https://」と入力した場合、安全なトンネルが生成され、SSLStripは干渉できなくなります。
SSLStripは、サーバーから送信されたHTTPSリダイレクトをインターセプトすることで機能します。次に、SSLstripはサーバーとのHTTPS接続をセットアップします(したがって、サーバーはすべてが正常であると見なします)が、被害者とのHTTP接続は維持します。 SSLStripは、これらのHTTPSリダイレクトをプレーンHTTPを使用してブラウザーに送信する場合にのみキャプチャできます。そうでない場合、SSLStripはSSLトンネルに「侵入」できますが、そうではありません。
[〜#〜] hsts [〜#〜] は、ブラウザーに常にHTTPS経由で接続するように(したがって、サーバーからのhttpsリダイレクトに依存しないようにするため)使用できる実装です。
これは、サイトがHTTPSに直接アクセスするユーザーをどのように処理するかによって異なります。
サイトがいずれかの時点でプレーンHTTPにリダイレクトする場合、SSLストリップ攻撃は成功する可能性があります。一部のサイトは、チェックアウトのように、機密と見なされるページにのみhttpsを適用します。他のページでは、ユーザーを意図的にプレーンHTTPにリダイレクトする場合があります。その場合、httpsを入力するユーザーは役に立ちません。
全体でHTTPSが使用されている場合、すべての通信は暗号化されるため、SSLストリップは機能しません。
ユーザーがブラウザーでhttps URLの使用を忘れるのを防ぐために、サイトは [〜#〜] hsts [〜#〜] ポリシーを設定して、ブラウザーに特定の時間枠でHTTPSを使用するように指示できます(例:1年)。ブラウザーのプリロードリストにサイトを表示して、HSTSが最初のアクセス後だけでなく、すぐに実行されるようにすることができます。