web-dev-qa-db-ja.com

ハッキングされたルーター上でHTTPSは安全ではありませんか?

ハッカーが、デバイスが接続されているルーターを使用してプロキシになり、サーバーの公開鍵を取得する代わりに自分の公開鍵をあなたに送信する可能性があると聞いた-ブラウザーは第三者と確認し、この証明書はドメインと一致しない場合、SSLエラーアイコンが表示されます。

ただし、ハッカーがすべての認証局のために偽のサードパーティも作成し、これがドメインの正しい証明書であることをデバイスで確認した場合はどうなりますか?

5
Muhammad Umer

ブラウザは、サードパーティからの検証だけを受け付けません。彼らが全体の運動をしたとしても、実際には無意味です。有効であると認められるためには、Webサイトによって提示された証明書がtrusted認証局によってデジタル署名されている必要があります。信頼できる認証局のデフォルトのリストは、ChromeでSettings->Advanced->HTTPS/SSL->Manage Certificates->Trusted Root Certification Authorities、 制限されています。このリストを取得するには、ブラウザー/ OS開発者との広範な審査プロセスを経る必要があります。

さらに、ブラウザが認証局にリクエストを送信して証明書を検証する必要はありません。ブラウザーはそれらの信頼できる機関の公開鍵をすでに所有しています(WindowsではView->Detailsを参照してください)、公開鍵は、特定のエンティティがメッセージ(この場合は証明書)に署名したことを証明するために必要なすべてです。この背後にあるロジックを理解したい場合は、デジタル署名がどのように機能するかを読んでください。紙の署名と同じように、デジタル署名を使用すると、エンティティに連絡することなく、エンティティが何かを承認したことを確認できます。

15
tlng05

証明書が機能する方法は、証明書がWebサイトからコンピューターに送信されることです。ブラウザが証明書を読み取り、「署名証明書」のIDを探します。次に、ダウンロードした証明書の署名が署名証明書によって作成されたことを検証します。署名証明書がそれ自体で署名されている場合、それは信頼されたルート証明書と呼ばれます。しかし、古い信頼されたルート証明書では機能しません。ブラウザーは、ブラウザーのインストール時に受け入れるように構成された証明書のみを信頼します。これらの特別に信頼された証明書は、信頼されたルート証明書ストアを構成し、OSベースにすることができます(WindowsにはEdgeで使用される証明書ストア、IEおよびChromeブラウザ)) 、またはブラウザベース(Firefoxには、信頼できるルート認証局の独自のプレインストールリストが付属しています。)

攻撃者はまず、信頼されたルート証明書をOSの信頼されたルート証明書ストアまたはブラウザの信頼された機関のリストに挿入する必要があります。

信頼された機関は、閲覧中にWebから動的に検索されません。プロキシは、インストールパッケージの一部として以外は、信頼できる証明書を処理しません。また、インストールパッケージがプロキシによって変更された場合、パッケージの署名は失敗し、インストール時にOSから「署名されていないパッケージ」の警告が表示されます。

4
John Deters

あなたの最初の発言は正しいです。信頼できるCAでない限り、ブラウザーは証明書が信頼されていないことを示します。そして、あなたはあなたがMiTMであることを知っているでしょう。

2番目の段落では、少し達しています。ハッカーはすべてのCAのDNSを危険にさらし、偽の証明書を検証する方法を持っている必要があります。ありそうもない。

2
HashHazard