この質問を簡潔にすることをお詫びします。問題があります。 Google.co.ukが私のブラウザーでHSTSに失敗しています。
これはgoogle.co.uk
の問題ですか、それとも私だけですか?誰かが私のインターネット接続を仲介していますか?
たくさんのサイトを見つけることができますが google.co.ukが機能していることを示しています HSTSの問題が私かGoogleかを確認できませんでした。自分の疑いがありますが、サードパーティによる確認が必要です。
PS:これはこれまでのところgoogle.co.ukにのみ表示されますが、残念ながら snuck.me は他のサイトの非HSTS証明書を明確にするために機能していないようです。
10分間ダウンした後、google.co.ukは再び機能するようになりましたが、snuck.meを使用すると、次のことがわかります。
ブラウザによる指紋:
D1:8F:DE:83:4A:68:88:32:DD:CF:C8:6B:0C:74:94:33:02:75:BC:43
snuck.meによる指紋:
42:38:CE:6C:AA:C5:FE:13:A0:5A:56:88:F3:F2:E7:E4:D7:14:07:DA
これにより、MITMがあることを確認できますか?
ブラウザが証明書を拒否しましたが、これは攻撃によって引き起こされる必要はありません。
Google.co.ukが私のブラウザーでHSTSに失敗しています。
表示される警告は、特にHSTSの問題を示すものではありません。それは、Firefoxが言っているだけです:「証明書は無効のようです。ところで、サイトがHSTSを使用しているため、手動による例外を追加することはできません。 1
無効な証明書が短期間提供された理由は多くあります。これは、ISPでの問題、ルーターの問題、キャプティブポータルによるSSLインターセプト(@FedericoPoloniによる言及)、または理論的にはMITM攻撃の不十分な試みである可能性があります。調査の最初のステップは、実際に提供された証明書を確認することです。
その後、証明書を正しく比較しませんでした:www.google.co.uk
に接続しましたが、google.co.uk
に対してサードパーティのテストを実行しました。これらは技術的に異なるドメインであり、指定されたサーバー名に応じて異なる証明書を提供します。
ここでは、openssl
を使用して各-servername
をテストしています。両方のフィンガープリントを認識できるはずです。
$ openssl s_client -servername www.google.co.uk -connect www.google.co.uk:443 < /dev/null 2>/dev/null | openssl x509 -fingerprint -noout -in /dev/stdin
SHA1 Fingerprint=D1:8F:DE:83:4A:68:88:32:DD:CF:C8:6B:0C:74:94:33:02:75:BC:43
$ openssl s_client -servername google.co.uk -connect www.google.co.uk:443 < /dev/null 2>/dev/null | openssl x509 -fingerprint -noout -in /dev/stdin
SHA1 Fingerprint=42:38:CE:6C:AA:C5:FE:13:A0:5A:56:88:F3:F2:E7:E4:D7:14:07:DA
1HSTS(HTTP Strict Transport Security)は、クライアントがプレーンHTTP(指定された時間)でサイトに接続してはならないことを示すためにWebサーバーが送信できるヘッダーです。ブラウザは、以前にwww.google.co.uk
にアクセスしたときにヘッダーを取得したか、プリロードしました。ヘッダーの副作用の1つは、例外を追加しても、UIで証明書の警告を無視できなくなることです。
システムの時刻を確認してください。時々、クロック(システム時刻)が間違っている場合や、時刻の同期が外れた場合に、このエラーが発生します。