Webアプリのホームページは、HTTPからHTTPSにリダイレクトされます。私たちのセキュリティコンサルタントは、これが重大なセキュリティの弱点であり、リダイレクトが傍受される可能性があることを報告しています。 SSLStripによる。したがって、リダイレクトを削除し、HTTPを完全に無効にして、ユーザーにhttps:// ...を手動で入力するよう要求する必要があります。
この問題を自分で調査したところ、最初のhttp応答は攻撃者によって直接MITMに偽装されている可能性があるように見えます。リダイレクトの必要はありません。したがって、リダイレクトを削除しても何も起こりません。
SSLStrip自体が具体的にこれを実行できるかどうかはわかりませんが、最初のHTTP応答を最初に確認する必要があるかもしれません。
問題のデバイスやブラウザが以前に一度アプリにアクセスしたことがあれば、HSTSがこの問題を防ぐことを理解しています。ただし、最初の連絡先については、アプリの機能に関係なく、HTTPリクエストがハイジャックされる可能性があります。WebアプリがブラウザのHSTSリストに含まれるほど人気がなければ、保護はありません。
私は何を取りこぼしたか? HTTPからHTTPSへのリダイレクトは重要ですか?
多くの一般的なユーザーが私たちのサイトに接続できなくなり、何も達成されないように思われるので、削除するのは嫌です。
はい、MITMシナリオでは、最初のHTTPリクエストで攻撃が成功します(ユーザーがHTTPSの欠落に気付かない場合)。そして、この最初のHTTPリクエストを防ぐ唯一の方法は HTTP Strict Transport Security(HSTS) です。
ご存じのように、HSTSは、サーバーのHTTPS応答に、ブラウザーにHTTPSのみを使用するよう指示するHSTSヘッダーが含まれていることを意味します。つまり、クライアントは、最初のHTTPS応答を取得する前に、HTTPS経由でのみサーバーに接続する必要があることを知りません。
しかし、この問題を解決するHSTSの機能があります。プリロードです!すべて HSTSをサポートするブラウザー には、ハードコードされたドメインのリストも含まれ、HTTPS経由でのみアクセスする必要があります。条件を満たしている場合、誰でもドメインを送信して HSTSプリロードリスト に含めることができます。
- 有効な証明書を持っている。
- すべてのHTTPトラフィックをHTTPSにリダイレクトします。 HTTPSのみである。
- HTTPS経由ですべてのサブドメインにサービスを提供します。具体的には、そのサブドメインのDNSレコードが存在する場合はwwwサブドメインを含みます。
- HTTPSリクエストのベースドメインでHSTSヘッダーを提供します。
- 有効期限は少なくとも18週間(10886400秒)でなければなりません。
- IncludeSubdomainsトークンを指定する必要があります。
- プリロードトークンを指定する必要があります。
- HTTPSサイトから追加のリダイレクトを提供している場合でも、そのリダイレクトにはHSTSヘッダーが含まれている必要があります(リダイレクト先のページではありません)。
サーバーでHTTPを無効にしてもセキュリティは向上しません。ユーザーは最初のリクエストの前にHTTPが無効になっていることを知らないため、HTTP経由でリクエストを行い、MITMがリクエストに応答できるようにします。 t答えた。