この記事の目次
eMudhraの中間CA鍵が漏えい、ブラウザは遮断済みでも開発環境は要確認
インドの認証局(CA)eMudhraの中間証明書8件について、秘密鍵が十分な乱数性(エントロピー)のないまま生成されていたことが2026年10月17日に報告され、ブラウザ各社とOSベンダーが相次いで遮断しました。Chromeは同日のうちに該当の鍵をCRLSetでブロックし、Firefoxも標準設定のユーザーに遮断を反映しています。一方、Python、Node.js、pip、Electronのように、CA証明書のセットを自前で持つツールは、ブラウザやOSの遮断だけでは守られません。Web制作・開発の現場では、使っているブラウザではなく、開発環境やビルドツールが対策済みかを確かめる必要があります。
eMudhraの中間CA、乱数性不足の鍵で証明書を偽造できる状態に
GoogleのChrome向け公式ブログによると、2026年10月17日18:05(UTC)に、Chrome Root Programがセキュリティ研究者から、8つのeMudhra下位CA証明書の秘密鍵が侵害されたという報告を受けました。同日19:45には、Chromeが報告を裏づけ、影響を受けた中間CAのSPKIハッシュをブロックするCRLSetの更新を配信しています。侵害された秘密鍵は、十分なエントロピーがない状態で生成されており、信頼が残っているクライアントに対しては、誰でも任意のWebサイトになりすますHTTPS証明書を偽造できる状態だったと説明されています。
eMudhra自身の声明は、少し違う面から状況を説明しています。同社によると、独立した研究者が10月17日に、グローバルTLS向けの中間CA8件の秘密鍵が暗号学的に弱いと報告し、同社は翌18日に8件すべてを失効させました。8件のうち7件は本番で使われておらず、本番で使われていた1件も、証明書を1枚も発行していないとしています。ルートCAの秘密鍵は影響を受けていないとも述べています。原因については、鍵のラップ/アンラップ工程で、正規の強い鍵と並行して弱い鍵が生成されたと説明していますが、同社自身が根本原因は未確定で、調査完了後に公表すると書いています。
ここで押さえたいのは、「証明書が悪用された形跡があるか」と「ブラウザが遮断した理由」は別の話だという点です。Googleは、ブロック前にこれらのCAに連鎖するTLS証明書がCertificate Transparency(CT)ログに記録されておらず、CTを強制するクライアント(既定のChromeを含む)に対しては、不正な証明書は使われ得なかったと説明しています。なお、Googleのブログは冒頭で「8つ」の証明書と書き、CTの段落では中間CAを「6つ」と書いており、この違いの説明はありません。それでも遮断が急がれたのは、鍵さえ復元できれば、証明書を偽造できてしまうためです。
ブラウザ・OSの対応状況と、Chromeのルート削除(日本時間10月28日)
Googleのブログと窓の杜の整理から、主な対応は次のように読み取れます。
- Chrome:10月17日にCRLSetでブロック。再起動やブラウザの更新なしで保護されたと、Googleは説明しています。
- Android・Googlebook:10月19日(月)の22:00(UTC)ごろ、Google Play開発者サービス経由で同等の更新を配信。日本時間では10月20日の朝7時ごろにあたります。端末の再起動で即時に受け取れるとされています。
- Firefox:eMudhraのページに掲載されたMozillaの説明によると、10月17日(UTC)に報告を受けてOneCRLで該当証明書をブロックし、22:59(UTC)には標準設定の全ユーザーに反映されました。窓の杜は、更新情報を受け取れない環境向けに、Firefox 158.0.1などの更新も公開されたと伝えています。MozillaはNSS 3.131.1で当該ルートも削除しており、NSSを使う他のアプリにも関わります。
- Apple・Microsoft:窓の杜の整理では、Appleは10月19日から、Microsoftは10月20日から遮断が適用されたとされ、Windowsは信頼・不信頼の証明書リストが自動更新されるため、ユーザーの操作は不要です。
- Ubuntu:窓の杜によれば、ca-certificatesパッケージの修正版が提供されています。DockerのベースイメージやCIで使う場合は、この更新を取り込んだイメージかどうかも確認したい点です。
さらに、Googleのブログによれば、2026年10月27日(火)午前(米国太平洋時間)に、ルート証明書「emSign ECC Root CA – G3」をChrome Root Storeから削除する更新が、Chrome Root Storeを使うすべてのデバイスに適用される予定です。この削除で、このルートに連鎖する正規の証明書の一部も、Chromeで信頼されなくなり、接続エラーになります(対象はこのルートだけで、eMudhraのG1ルートは引き続き有効と、同社は説明しています)。Canary版・Beta版には、それより早く適用されます。Googleは、Webサイト運営者に対し、このルートに連鎖する証明書を使っている場合は、Chrome Root Storeに含まれる別のPKI階層から新しいTLS証明書を直ちに取得して導入するよう求めています。
eMudhra側も、影響を受ける顧客に、別の公的信頼CA階層から新しい証明書を再発行していると述べ、10月22日付の更新で、Sectigo発行の証明書を全顧客向けの選択肢にすると発表しています。自分のサイトの証明書が、どのCAのどの階層から発行されているかは、証明書の詳細画面で発行者を確認できます。
CA証明書のセットを持つ開発ツールは、個別の更新が必要
ブラウザやOSが遮断しても、開発に使うツールが独自のCA証明書のセットを持っている場合は、そのツールを更新するまで遮断されません。窓の杜の整理では、次のような対応が挙がっています。
- Python:10月21日に3.15.1などが前倒しで公開されました。さらに10月25日(UTC)に、3.15.2、3.14.10、3.13.18、3.12.16、3.11.18の5バージョンが公開され、侵害された鍵を使う攻撃への「最後の砦」として、sslモジュールが該当する接続を遮断するようになりました。3.13.18・3.12.16・3.11.18はソースコードのみの提供で、バイナリはありません。pipは、Pythonを更新すれば保護されると説明されています。
- Node.js:2026年10月21日のセキュリティリリースで、依存関係の更新としてca-cert(eMudhra Intermediate CA Compromise)が26.x、24.x、22.xに含まれています。公式の告知は、この項目の詳細な影響や修正の具体的な内容には触れていません。修正版は告知のダウンロード欄にあるv22.23.4、v24.22.1、v26.12.1です。
- そのほか、窓の杜によれば、Docker Desktop/Docker CLI、Electron、Dart・Flutter、Git for Windows、EmEditor、Vivaldiなどで更新が提供されています。
研究者らの情報集積サイト(emudhra.we-have-a-problem.com)には、ブラウザで試せるチェックツールがあります。ただ、窓の杜は、その結果は使用中のブラウザについてのものであり、別のアプリや開発環境が対策済みかどうかは示さないと注意しています。
Python・Node.jsの版とCIイメージ、サイト証明書のチェーンを確認
実際の作業としては、次の順で確認するのが現実的です。
- ローカルのPython・Node.jsのバージョンを確認し、Pythonなら3.15.2など上記の修正版、Node.jsなら10月21日のセキュリティリリース(22.23.4・24.22.1・26.12.1)以降へ更新する(告知は、このリリースにca-certの更新を含むとしています)。
- CI・Dockerイメージ・ビルド用のコンテナで、同じツールのバージョンが古いまま固定されていないか確かめる。
- 自社や担当サイトのTLS証明書が、emSign ECC Root CA – G3に連鎖していないかを、証明書の発行者・チェーンから確認する。連鎖している場合は、10月27日より前に、別の階層の証明書へ切り替える(Chromeの削除は日本時間では10月28日の未明から朝にあたるため、26日時点では実質的に残り1〜2日です)。
今回の件では、ブラウザ側の遮断が早かった一方、ツールごとの対応には日数の差がありました。ChromeとFirefoxは報告から数時間で遮断したのに対し、Node.jsとPythonの最初の修正は10月21日、Electron・Git for Windowsは23日、Dart・Flutterは26日の公開です。CA証明書を自前で持つツールは、こうした更新を取り込むまで保護されず、CIのイメージやロックファイルで版を固定していれば、その分だけ古い状態が残る可能性があります。Pythonがsslモジュールに追加の遮断を入れたように、言語側が独自に守りを足す動きもありますが、eMudhra自身が根本原因を未確定としているため、続報も追う必要があります。まずは手元とCIで使っているツールの版を一覧にし、修正版との差を確かめるところから始めるのがよいと考えます。
参考にした情報
- Google「Protecting Chrome and Android Users from Compromised eMudhra Intermediate CA Certificates」(2026年10月20日)
- eMudhra「Certificate Security Incident」
- Node.js「October 21, 2026 Security Releases」
- 窓の杜「PHPの影に隠れたもう一つの重大インシデント『eMudhra』の証明書問題、どう対処すれば?」(2026年10月22日)
- 窓の杜「『Python』に再び『eMudhra』問題への対策、『Python 3.15.2』など5バージョンを提供」(2026年10月26日)
2026年10月26日時点の情報です。

