eMudhraの中間CA秘密鍵が復元可能に ―証明書の信頼問題と企業のTLS対策

Share
eMudhraの中間CA秘密鍵が復元可能に ―証明書の信頼問題と企業のTLS対策アイキャッチ画像

HTTPS通信では、サーバー証明書の検証によって接続先の正当性を確認します。しかし、その信頼の根拠となる認証局の秘密鍵が第三者に悪用されると、なりすましの危険が生じます。2026年10月、認証局eMudhraの中間CA証明書8件に対応する秘密鍵が、第三者でも容易に復元できる状態だったことが明らかになりました。MozillaやGoogleは対象証明書の信頼を遮断する対策を進め、関連ソフトウェアの更新も行われています。企業が確認すべきなのは、自社サイトで使用するSSL/TLS証明書だけではありません。外部サービスへ接続する業務アプリの証明書検証機能も対象です。本記事では、問題の概要と影響範囲、API通信を含むシステムの確認事項を整理します。

※本記事は2026年10月22日時点で公表されている情報を基に作成しています。認証局の調査結果や各ソフトウェアの対応状況は、今後変更される可能性があります。

中間証明書とは サーバー証明書を信頼につなぐ役割

中間証明書は、ルート認証局から個々のサーバー証明書へ信頼をつなぐ証明書です。一般的な証明書チェーンでは、ブラウザやOSなどが信頼するルート証明書を起点に、中間CA証明書、その下のサーバー証明書へと署名の関係が続きます。接続する側はこの関係などを検証し、相手の証明書を受け入れてよいか判断します。

Webサイトの運営者が持つ秘密鍵と、中間CAが証明書に署名するための秘密鍵は役割が異なります。後者を第三者が使用できる状態になると、攻撃者は対象の中間CAが正規に発行したかのように見える証明書を偽造できるおそれがあります。今回、問題となったのはこの署名用の秘密鍵です。通信経路に介入できる攻撃者が偽の証明書を提示し、接続側が受け入れると、通信内容を読み取られたり書き換えられたりするおそれがあります。

図1:中間CAの秘密鍵とサーバー証明書の信頼の関係

中間CAの秘密鍵とサーバー証明書の信頼の関係
出典:株式会社インターネットイニシアティブ「サーバ証明書の仕組みに関すること」、Mozilla Corporation(Firefox Security Team)「Protecting Firefox users following the compromise of eMudhra intermediate certificates」、Mozilla Foundation(Bugzilla)「eMudhra: Private key compromise of Intermediate Certificates(Bug 2083449)」を基に弊社作成。
※TLSの証明書チェーンと攻撃成立の条件を簡略化した概念図です。実際には複数の中間CAやクロス署名が存在する場合があります。秘密鍵の復元だけで通信の盗聴・改ざんが成立することを示すものではありません。

eMudhraの中間CAで秘密鍵の生成に問題が発覚

Mozillaの調査記録によると、対象8件のうち6件はTLS用、2件はコード署名用です。Mozillaは2026年10月17日20時06分(UTC)に報告を受け、通常設定のFirefox向けには同日22時59分までにOneCRLによる遮断を配信しました。日本時間では10月18日5時06分の受領から、同日7時59分までの対応です。対象の鍵は楕円曲線暗号P-384を使っていましたが、秘密鍵の値はすべて256未満の整数でした。独立して検証した研究者Scott Helme氏も、公開証明書から対象の鍵をノートPCで1秒未満に復元できたと報告しています。十分なランダム性を持つ値が必要なところ、極端に小さな値が使われていたことが問題であり、適切に生成されたP-384の鍵まで容易に復元できるという話ではありません。

eMudhraは、2025年4月30日の鍵生成作業で、鍵を移送するためのwrap/unwrap工程に問題があり、正常な鍵とは別に弱い鍵が生成されたと説明しています。同社はHSM(ハードウェアセキュリティモジュール)を使用していたとしていますが、10月21日の更新時点で正確な根本原因は確定していません。現段階では、同社が説明する作業工程の問題と、今後の調査で確定する原因を分けて捉える必要があります。

ブラウザだけでなく業務アプリの証明書検証も確認

Chromeは10月17日に対象TLS中間CAの公開鍵をCRLSetで遮断しました。Googleによると、その遮断前に対象の中間CA配下のTLS証明書はCertificate Transparency(CT)のログに登録されていませんでした。このため、CTを必須とする標準設定のChromeなどでは、対象CAを使った偽造証明書が信頼される状態ではなかったと説明しています。

CTは、証明書の発行を公開ログで検証できるようにする仕組みです。認証局が証明書を失効させたという情報や、ブラウザ独自のブロックリストとは役割が異なります。失効情報やブロックリストを受け取らないアプリに、ブラウザと同じ対策が自動的に行き渡るとは限りません。業務アプリで証明書を検証するのは、HTTPライブラリやOS、独自の信頼ストアなどです。SDKだけの更新で対策が済むとは限りません。自社サイトの証明書の発行元が別でも、外部APIへ接続するアプリが対象CAを信頼する場合は確認が必要です。

図2:証明書を提示する側と検証する側の確認範囲

証明書を提示する側と検証する側の確認範囲
出典:Mozilla Foundation(Bugzilla)「eMudhra: Private key compromise of Intermediate Certificates(Bug 2083449)」、Google LLC(Chrome Root Program)「Compromised eMudhra Intermediate Certificatesへの公式投稿」、Cloudflare, Inc.「8 eMudhra certificates are compromised. Here’s what you need to know」を基に編集部作成。
※企業における確認対象を整理した概念図です。記載したすべての製品や環境が影響を受けることを示すものではありません。対応の要否は、実際の証明書チェーン、検証機能の実装、ソフトウェアの更新状況によって異なります。

中間CA証明書の失効とルートCAの信頼取り消し

eMudhraは、問題の8件の中間CAからエンドユーザー向け証明書を発行していなかったと説明しています。ただし、それだけで第三者による偽造の可能性がなくなるわけではありません。誰かが秘密鍵を復元し、認証局の正規の発行手続きを経ずに証明書を作ることが問題だからです。

Mozillaは、中間CAだけを個別に拒否する仕組みを持たないソフトウェアも保護するため、上位のルート証明書「emSign ECC Root CA – G3」の信頼を緊急に取り消す方針を示しました。GoogleもChrome Root Store v43で同ルートを削除する予定です。Googleが示した安定版への反映予定は、10月27日午前の米国太平洋夏時間で、10月22日時点では今後の対応に当たります。

ルートの信頼が外れると、問題の弱い鍵を使っていない別の中間CA配下であっても、そのルートにつながる正規のサーバー証明書が検証に失敗する場合があります。eMudhraは当初、移行が必要な証明書を約3万件と見積もりました。この数字は被害件数やWebサイト数ではありません。対象の階層を利用している場合は、有効期限を待たず、提供元の案内に沿って代替の証明書チェーンへ移行する必要があります。

FirefoxやGoなどの修正版と適用時の注意

Mozillaは10月20日、OneCRLの更新を受け取れない設定の利用者も保護するため、Firefox 158.0.1、Firefox ESR 115.43.1/153.5.1を公表しました。さらにAndroid版は10月21日に158.0.2が公開され、起動時に同梱のOneCRLブロックリストを適用する処理が修正されています。Android版では158.0.1だけを確認して対応済みとせず、この追加修正を含む更新を適用します。

Go 1.27.3および1.26.10では、対象の中間CA証明書を含む証明書チェーンを検証時に拒否する処理が追加されました。Goの脆弱性情報ではCVE-2026-111943、GO-2026-6809として管理されています。Go製アプリを運用する場合は、修正を取り込んだ製品版の有無を確認し、自社開発なら修正版でビルドした実行ファイルを配備することが対応になります。CloudflareはWARPなどのクライアントとcloudflaredの更新を公開しています。コンテナやアプリの依存関係も確認し、必要な再起動・再配備まで行います。

証明書の期限管理に検証経路の管理を加える

まず、WebサイトやAPIが提示する証明書チェーンを把握し、信頼が取り消される階層に依存していないかを確認します。同時に、外部のサービスへ接続する業務アプリについて、使用している証明書の検証機能と信頼ストアを調べます。証明書を提示する側と検証する側を分けると、証明書の交換が必要なのか、ソフトウェアやCA証明書の更新が必要なのかを整理できます。更新後は、実際の業務アプリで動作を確認します。ブラウザでの確認結果を、別の検証機能を使うバッチ処理やAPIクライアントの安全性の根拠にはできません。証明書エラーが出ても検証を無効にせず、チェーンや設定の原因を調べます。

今回の事案は、サーバー証明書が有効期限内であっても、認証局に対する信頼の変更によって証明書の交換やソフトウェアの更新が必要になることを示しています。企業には、証明書の発行元や有効期限だけでなく、証明書チェーンや検証に使用するソフトウェア、更新の管理体制まで把握し、継続的に確認することが求められます。


関連記事|TLS通信の安全性を確認するために

TLS通信の安全性を維持するには、証明書の信頼性に加え、暗号設定やTLSバージョンの適切な管理も重要です。基本的な仕組みから具体的な確認方法まで、以下の記事で紹介しています。

【参考情報】

編集責任:木下

ウェビナー開催のお知らせ

最新情報はこちら


Security Serviceへのリンクバナー画像
BBsecコーポレートサイトへのリンクバナー画像
セキュリティ緊急対応のバナー画像

Security NEWS TOPに戻る
バックナンバー TOPに戻る

TLSバージョンの確認方法とは?ブラウザ・OpenSSL・ツールでのチェック手順と安全な設定ポイント

Share
「TLSバージョンの確認方法とは?ブラウザ・OpenSSL・ツールでのチェック手順と安全な設定ポイント」アイキャッチ画像

サイバー攻撃の多くは、暗号化通信の不備や古いセキュリティ設定を狙って行われます。特に、TLS(Transport Layer Security)の設定が適切でない場合、通信の盗聴や改ざんといったリスクが高まります。そのため、企業のWebサイトやシステムでは、現在使用しているTLSバージョンを正しく把握し、安全な設定を維持することが重要です。本記事では、TLSバージョンの確認方法と、安全な設定・運用のポイントを実務視点で解説します。

TLS設定の全体像やリスクについては、基礎解説の記事とあわせて確認すると理解が深まります。TLS設定の全体像やリスクを先に理解したい方は、「TLS設定の安全性と確認ポイント」 を先にお読みください。

TLSとは?(基本の整理)

TLSは、インターネット上の通信を暗号化するためのプロトコルです。HTTPS通信は、このTLSによって保護されており、通信内容の盗聴や改ざんを防ぐ役割を担っています。

TLSのバージョン移行の背景

TLSはこれまで複数のバージョンが提供されてきましたが、セキュリティ上の問題により、古いバージョンは段階的に非推奨となってきました。特にTLS1.0およびTLS1.1は、暗号技術の脆弱性や攻撃手法の進化により安全性が不十分とされ、現在では主要なブラウザやサービスにおいて無効化されています。その結果、現在のWeb環境ではTLS1.2以上の利用が標準となり、さらにセキュリティと性能を強化したTLS1.3への移行が進んでいます。

TLSの仕組みやバージョンごとの違いについては、以下の記事で詳しく解説しています。
「TLS設定の安全性と確認ポイント:古い暗号設定が引き起こすリスクと改善手順」

TLSバージョンの確認方法

TLSバージョンは、以下の方法で確認できます。

ブラウザで確認(例:Chrome)

  1. Webサイトにアクセス
  2. F12で開発者ツールを起動
  3. [Security]タブを選択 →「Connection is secure」の項目を確認→ “TLS 1.3” などと表示されます

OpenSSLコマンドで確認(Linux/Mac)

“`bash
openssl s_client -connect example.com:443 -tls1_3

オンラインツールで確認

  • SSL Labs: https://www.ssllabs.com/ssltest/
  • CDN77: https://tools.cdn77.com/tls-test

最新のTLSバージョン利用状況

2025年時点における主要WebサイトのTLS対応状況を見ると、TLS 1.2は引き続き広く利用されており、TLS 1.3の採用も大きく進んでいます。一方で、TLS 1.0およびTLS 1.1は大幅に減少し、実運用ではほぼ利用されない状況となっています。

【各プロトコルバージョンのサポート状況】

出典:Qualys SSL Labs SSL Pulse (https://www.ssllabs.com/ssl-pulse/)

現在もTLS 1.2が広く利用されていますが、多くの環境でTLS 1.3にも対応しており、サーバとブラウザの双方が利用可能な場合には、より新しいバージョンが優先的に使用されます。

また、最新のブラウザ環境では、通信の多くがTLS 1.3で行われるケースが増えており、特に主要サイトではTLS 1.3の利用が標準的になりつつあります。こうした傾向から、暗号化通信はTLS 1.3を中心とした環境へ移行が進んでいます。

さらに、主要ブラウザにおいてTLS 1.0およびTLS 1.1が無効化されたことで、これらの古いバージョンは互換性維持の目的でもほとんど利用されなくなっています。セキュリティおよび互換性の観点からも、TLS 1.2以上への対応が必須となっています。

古いTLS(TLS1.0 / 1.1)バージョンを使い続けるリスク

TLS1.0や1.1は既に非推奨であり、脆弱性が存在します。攻撃者は、サーバを攻撃するにあたって必ずブラウザを経由するわけではないため、TLS 1.1以下の接続を許容すること自体が危険であり、攻撃者にとって狙いやすいターゲットとなる可能性があります。脆弱性を悪用された場合、通信を盗聴し復号することで重要情報の窃取が可能になるというリスクも考えられます。

多くのサイバー攻撃は、古いTLSバージョンなどの脆弱性を悪用して侵入されます。
脆弱性への具体的な対応方法については、以下の記事で詳しく解説しています。
→ 脆弱性対応の基本と実践ポイント

古いTLSが引き起こす問題と影響

古いTLSバージョンの危険性:BEAST/ダウングレード攻撃とは

BEAST攻撃SSL 2.0、SSL 3.0およびTLS 1.0 プロトコルに影響を及ぼし、攻撃者はWebブラウザとWebサイトとの間のSSL暗号化、またはTLS暗号化されたセッションのコンテンツを復号することができる*1
ダウングレード攻撃TLS 1.1以下のプロトコルでは、認証付き秘匿モード等の安全性の高いアルゴリズムがサポートされていないため、強度の低い暗号アルゴリズムを強制的に使用させることができる*2

現在のセキュリティ対策の指標として一般的に用いられる各種国際的標準でも、TLS 1.1以下の継続使用は下記のとおり推奨されていないため、利用している場合には、早急に対策を検討することが求められます。

NIST(National Institute of Standards and Technology、
米国立標準技術研究所)
2018年10月、ガイドライン案公開。2024年1月1日までにTLSを使用するすべての米国政府のサーバでTLS 1.3をサポートすることを提案
PCI DSS(Payment Card Industry Data Security Standard)2018年6月30日以降、初期TLSを利用しているシステムはクレジットカード業界における監査基準に適合しない
※POS POI環境のように既知の脆弱性の悪用が困難であったり、SSL/TLSをセキュリティコントロールとしては使用していなかったりする等、例外的にTLS 1.1以下が許容される場合がありますが、情報セキュリティのベストプラクティスではTLS 1.1以下のプロトコルバージョンはすべて非推奨とされています。*3

TLS1.2/1.3への移行手順と設定のポイント

安全な通信のためには、TLS1.2以上の利用が推奨されます。具体的には、TLS 1.1以下は無効(利用不可)とし、TLS 1.3およびTLS 1.2を有効にし、バージョンが新しいものから順に接続の優先度を高く設定してください。

2018年8月には、TLS 1.3が正式リリースされました。以降、TLS 1.3に対応するプラットフォーム等が次々に利用可能になっています。例としては、OpenSSL 1.1.1系(2018年9月)、OpenSSL 3.0系*4(2021年9月)、Java SE/JDK 11(2018年9月)、Java SE/JDK 8バージョン8u261以上*5(2020年7月)や、そのほかにもRed Hat Enterprise Linux 8(2019年5月)が挙げられます。

TLS 1.3のサポートにより、パフォーマンスとセキュリティが向上します。 構成上または仕組み上、現時点ではTLS 1.3を実装することが困難な場合、上記よりさらに古いシステムが稼働している可能性が考えられます。それらのシステムは、経年に伴う脆弱性の蓄積による影響や、サポート終了により新たに発見された脆弱性への対応策がなくなること等も危惧されます。

設定時のチェックポイント

  • TLS1.0 / 1.1の無効化
  • 安全な暗号スイートの使用
  • 証明書の適切な管理

TLS設定を継続的に管理する重要性

TLS設定は一度確認すれば終わりではありません。実際の運用環境では、サーバ構成や他システムとの兼ね合いにより、「安全そうに見えてもリスクが残っている」ケースも少なくありません。自社サイトのTLS設定について、

  • 定期的なチェック
  • 設定変更時の再確認
  • 最新のセキュリティ情報の把握

といった継続的な運用が重要です。

各種ガイドラインの紹介

PCI DSSについては、 2022年3月31日、Payment Card Industry Security Standards Council(PCI SSC)により、v4.0が公開されました。

本ガイドラインは、各種国際的標準(NIST SP800/PCI DSSv4.0/OWASP ASVS等)の準拠に向けた取り組みや、暗号設定における今後のセキュリティ対策を検討する上でも役に立ちます。ぜひ参照されることをおすすめします。

PCI DSS v4.0で求められるセキュリティ対策のポイントについては以下の記事で詳しく解説しています。ぜひあわせてご覧ください。
「PCI DSS v4.0で変わるセキュリティ対策のポイント」

TLS設定確認を効率化する方法

TLS設定の確認・管理を効率化するには、ツールや外部サービスの活用が有効です。

  • 現在の設定が本当に適切か判断できない
  • 古い設定や見落としがないか不安がある
  • 他のセキュリティリスクとあわせて確認したい

と感じた場合は、第三者の視点で状況を整理することも有効です。

BBSecでは

TLS設定の確認だけでなく、システム全体のセキュリティを強化するには、専門的な診断の実施が有効です。脆弱性診断やセキュリティ対策についてご検討の方は、お気軽にご相談ください。

ネットワーク脆弱性診断

悪意ある第三者の視点で、ネットワークをインターネット経由またはオンサイトにて診断し、攻撃の入口となる可能性のある箇所を検出します。システムの導入・変更・アップグレード時、運用中のシステムの定期チェックにご活用いただけます。

ネットワーク診断バナー広告

デイリー自動脆弱性診断

内部ネットワークおよびWEBサイトの脆弱性を自動診断し、その結果を専用のWEBページで報告します。新規設備投資が不要で、即時に結果を確認できるので、脅威が現実となる前に対策を施すことが可能になります。

CPEバナー広告

TLS設定の基本的な考え方やリスクについては、
→「TLS設定の安全性と確認ポイント」もあわせてご覧ください。


公開日:2022年4月6日
更新日:2026年4月1日

編集責任:木下

Security NEWS TOPに戻る
バックナンバー TOPに戻る


資料ダウンロードボタン
年二回発行されるセキュリティトレンドの詳細レポート。BBSecで行われた診断の統計データも掲載。
お問い合わせボタン
サービスに関する疑問や質問はこちらからお気軽にお問合せください。

Security Serviceへのリンクバナー画像
BBsecコーポレートサイトへのリンクバナー画像
セキュリティ緊急対応のバナー画像