0Pricing
Cryptology Academy · レッスン

TLS証明書の警告と対処法

ブラウザーの証明書エラーを読み解き、進むべき場合と離れるべき場合を判断できるようにします。

「TLS証明書の警告と対処法」はCoddyKit上の無料Cryptology Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCryptology Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cryptology Academyコースには全4レッスンが含まれています。

期限切れ証明書の警告

NET::ERR_CERT_DATE_INVALIDは、証明書の有効期間が終了したときに表示されます。証明書の「Not After」日付を過ぎた状態です。この警告は通常、サーバー管理上のミスを示します。管理者が証明書の更新を忘れたことが原因です。

CAが証明書の有効性を保証しなくなっているため、期限切れの証明書はセキュリティを保証しません。サイト自体は正規のサイトである可能性がありますが、証明書の仕組みは機能しなくなっています。

不明なCAの警告

NET::ERR_CERT_AUTHORITY_INVALIDは、ブラウザーの信頼済みルートストアに含まれていないCAによって証明書が署名されているときに表示されます。自己署名証明書、社内CAが発行した証明書、または主要なルートプログラムに含まれていない小規模なCAの証明書で発生します。

ブラウザーのルートプログラム(Mozilla、Google、Apple、Microsoft)は、信頼するCAの一覧を厳格に管理しています。CAが登録されるには、広範な監査要件を満たす必要があります。登録されていないCAの証明書を使うと、この警告が表示されます。

ホスト名不一致の警告

NET::ERR_CERT_COMMON_NAME_INVALIDは、証明書のSubjectまたはSANフィールドが、ブラウザーのアドレスバーに表示されているホスト名と一致しないときに表示されます。証明書に「router.example.com」と記載されている状態で「https://192.168.1.1」にアクセスすると、この警告が表示されます。

この警告は、サーバーの設定ミス、正規の証明書を別の証明書に置き換えるMITM攻撃、またはホスト名ではなくIPアドレスで正規サイトにアクセスしたことを示している可能性があります。

自己署名証明書の警告

自己署名証明書とは、IssuerとSubjectが同じ証明書です。つまり、証明書を認証する機関がサーバー自身です。自己署名証明書は第三者による検証を提供しないため、ブラウザーはデフォルトでは信頼しません。

自己署名証明書は、開発環境、社内ツール、テストでよく使用されます。CA署名証明書と同じように通信を暗号化できますが、身元の保証は提供しません。

失効した証明書の警告

失効した証明書の警告は、CAが有効期限前に証明書を無効化したときに表示されます。通常は、秘密鍵が侵害された、組織が存在しなくなった、または証明書が誤って発行されたことが原因です。

失効は、OCSP(Online Certificate Status Protocol)またはCRL(Certificate Revocation List)を使って確認します。Chromeはパフォーマンス向上のため、失効情報を事前に読み込んだCRLSetsを使用し、重要度の高い証明書についてはリアルタイムのOCSPで補完します。

警告を回避しても安全な場合

証明書の警告は、限定された社内環境や開発環境では、一般に回避しても問題ありません。たとえば、自己署名証明書を使う自分の開発サーバー、公開ルートストアに含まれていない社内CAを使う社内ツール、またはIPアドレスがそのデバイスと一致することが分かっている家庭用ルーターなどです。

このような場合、警告は攻撃ではなく、CAが不足していることを示しています。信頼ストアにCAを追加するか、その社内環境に限って特定の証明書を受け入れることができます。判断とその理由を記録してください。

決して回避してはいけない場合

銀行、メール、医療ポータル、政府サービス、または認証情報や機密情報を入力するサイトでは、証明書の警告を決して回避しないでください。警告は、MITM攻撃が進行中であることを示している可能性があります。

証明書の警告が実際の攻撃を示すのがたとえ1パーセントの確率であっても、機密性の高いサービスで警告を回避することは、許容できないリスクを生みます。サイトにアクセスできない不便さは、認証情報の窃取や金融詐欺に比べればはるかに軽微です。

MITMの兆候としての証明書エラー

MITM攻撃を行う攻撃者は、TLS接続を傍受して自分の証明書を提示します。その証明書がブラウザーに信頼されていない場合、警告が表示されます。この警告こそが、セキュリティ機能が正しく動作している証拠です。

企業のファイアウォールを管理している攻撃者や、侵害されたルーターが、警告を表示させずにTLS検査を行うため、自分のCAを注入することがあります。普段から信頼しているサイトで突然証明書の警告が表示されるようになった場合は、すぐに調査してください。

証明書の問題を報告する

正規の公開Webサイトで予期しない証明書の警告が表示された場合は、すぐに報告してください。Googleのサービスの場合は、Chromeのフィードバックボタンを使用します。それ以外のサイトでは、別の経路(電話や別のネットワーク)でサイトの所有者に連絡してください。

Certificate Transparencyのログを使うと、誰でも自分のドメインに対して予期しない証明書が発行されていないか監視できます。FacebookのCertificate Transparency Monitoringなどのサービスは、自分のドメインに新しい証明書が発行されたときに所有者へ通知します。

HSTSと回避の防止

HTTP Strict Transport Security(HSTS)は、HSTSに登録されたドメインについて、ブラウザーが証明書エラーを受け入れるのを防ぎます。ブラウザーがHSTSヘッダーを一度受信すると、利用者が「それでも続行」をクリックした場合でも、そのドメインへのHTTP接続や証明書エラーのある接続を拒否します。

HSTSプリロードリストに登録されたサイトはブラウザーにハードコードされているため、初回のアクセスでも保護されます。プリロードされたサイトでは証明書の警告を回避できないため、そこに対するMITM攻撃は現実的ではありません。

内部PKIの安全な運用

内部CAを運用する組織は、モバイルデバイス管理(MDM)またはグループポリシーを通じて、すべての社内デバイスにCA証明書を配布する必要があります。これにより、ユーザーがセキュリティ警告を手動で回避しなくても、内部ツールで証明書警告が表示されなくなります。

内部CAの鍵はファイルシステムではなく、HSMに保存する必要があります。CA証明書の有効期間は短く設定し、パブリックインターネットのドメインでは信頼せず、組織固有の内部名前空間に対してのみ信頼する必要があります。

証明書エラーのクイズ

TLS証明書の警告についての理解度を確認しましょう。

要点:証明書警告

証明書警告は、具体的な問題を示しています。ERR_CERT_DATE_INVALID(有効期限切れ)、ERR_CERT_AUTHORITY_INVALID(不明なCA)、ERR_CERT_COMMON_NAME_INVALID(ホスト名の不一致)などです。それぞれに固有の原因と適切な対応があります。

銀行、メール、医療関連のサイトで証明書警告を決して回避しないでください。自己署名証明書や内部CA証明書を使用する内部ツールは、状況を確認したうえで安全に利用できます。HSTSは、登録済みドメインで警告の回避を防ぎ、MITM攻撃から保護します。

よくある質問

「TLS証明書の警告と対処法」レッスンは無料ですか?

はい。「TLS証明書の警告と対処法」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cryptology Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cryptology Academyコースには全4レッスンが含まれています。

「TLS証明書の警告と対処法」で何を学びますか?

ブラウザーの証明書エラーを読み解き、進むべき場合と離れるべき場合を判断できるようにします。 ブラウザで直接実行するハンズオンコードでCryptology Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cryptology Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCryptology Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「TLS証明書の警告と対処法」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCryptology Academyレッスンでコードを書いて実行できますか?

はい。すべてのCryptology Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 南京錠アイコンが本当に意味すること
  2. WebサイトがSSL証明書を取得する仕組み
  3. TLS証明書の警告と対処法
  4. HTTPへのダウングレードと混在コンテンツのリスク
← Cryptology Academyに戻る