
インドの認証局eMudhraで秘密鍵8個が実質たった1バイト、証明書を偽造できる欠陥が判明
インドの認証局運営企業eMudhraで、証明書の偽造につながる中間CAの秘密鍵の問題が公表された。Chrome・Firefoxに対策が配信された後も、Go製ソフトウェアやPythonのAPI連携では更新状況の確認が必要だ。
2026年10月23日時点の更新先と、社内システムで必要な対処をまとめる。
eMudhraの中間CA鍵で何が起きたのか
認証局(CA)はWebサイトなどの証明書を発行する。中間CAは、上位の認証局から発行を認められた認証局で、秘密に管理する鍵で証明書に署名する。
Mozillaの調査では、8個の中間CAの秘密鍵の値が、実質1バイトに収まる小さな数になっていた。十分に複雑な鍵が生成されておらず、第三者が秘密鍵を割り出せる状態だった。
こうした鍵を使うと、正規の認証局が発行したように見える証明書を偽造できる。未対策のソフトウェアでは、通信を傍受できる攻撃者が接続先になりすまし、通信内容を盗み見たり書き換えたりするおそれがある。
eMudhraは鍵の生成工程に不備があったと説明し、原因を調査中だ。10月18日には問題の証明書を失効させ、有効として扱わない措置を取った。
Chrome・Firefoxが対応しても確認が必要な理由
ChromeとFirefoxは、問題の証明書を拒否する情報を配信した。一方、GoやPythonの処理では、ブラウザと別の証明書一覧や失効確認の仕組みを使うことがある。
信頼する認証局の基準となる証明書が「ルート証明書」、保存場所が「信頼ストア」だ。OSの一覧を使う場合と独自の一覧を持つ場合があり、業務システムが参照する信頼ストアも確認する必要がある。
Googleは「emSign ECC Root CA - G3」をChromeの信頼ストアから削除する更新を、10月27日午前(米国太平洋夏時間)に配信予定だ。自社サイトの証明書がこのルートにつながる場合は、提供元へ確認し、別の信頼されるルートにつながる証明書へ切り替える。
Go・certifi・Pythonで更新するものはどう違うのか
Goは問題の中間CAを拒否する処理を追加した。多くの環境ではOSのルート証明書も使うため、OS側の更新状況も関係する。
certifiはPython向けのルート証明書一覧を提供するパッケージで、Requestsが通常利用する。2026.10.19では「emSign ECC Root CA - G3」が削除された。標準sslや独自設定では参照先が異なる。
| 利用環境 | 更新・確認するもの |
|---|---|
| Go製ソフトウェア |
|
| Requests・certifi |
|
| Python標準のssl |
|
| pip |
|
Goの検証処理は通常、実行ファイルに組み込まれる。修正を反映するには、更新したGoで作り直す「再ビルド」と再配備を行う。導入製品は提供元へ対応を確認する。
certifiは仮想環境やコンテナごとに確認する。pip自身の同梱物も別に更新が必要だ。OS管理のパッケージは提供元の案内に従う。
社内システムで今すぐ確認する順序
- HTTPS通信を行う処理と担当者を洗い出す。 本番のAPI連携、定期処理、コンテナ、開発PC、CI、委託先の製品を確認する。自社Webサイトで利用する証明書の提供元も確認する。
- 各処理で使うバージョンと証明書の参照先を確かめる。 Goは実行ファイルを作成したバージョン、Pythonは稼働環境のcertifiとpip、OSや独自の信頼ストアを確認する。
- 更新して稼働環境へ反映する。 対応済みのGoでの再ビルド、依存パッケージやOSの更新、コンテナの再配備など、構成に合う作業を行う。委託製品は提供元と対応日程を決める。
- 適用結果と通常の接続を確認する。 稼働中の実行ファイルやパッケージが更新されたことを確かめる。証明書一覧の再読み込みや再起動の要否を確認し、業務で使うAPIやサービスへ正常に接続できるかを記録する。
自社システムや開発環境のセキュリティ対策について、お気軽にご相談ください。

