Mozilla Security Blogのページ
出典: Mozilla Security Blog

256通りの候補から秘密鍵を復元できる状態に

認証局eMudhraが発行した中間証明書8件で、秘密鍵の値が極端に小さく、最大でも256通りの候補を試せば復元できる問題が見つかりました。秘密鍵を使うと正規サイト向けの証明書を偽造できるため、攻撃者が通信を傍受できる状況では、サイトになりすまして通信を読んだり改変したりする恐れがあります。

影響を受けた8件のうち、6件はTLS(HTTPS通信に使う仕組み)向け、2件はコード署名向けです。Mozillaの調査によると、8件はすべてP-384方式の鍵を使い、2025年4月に作成された一連の中間証明書に含まれていました。

楕円曲線暗号では、秘密鍵の数値から公開鍵を計算できますが、安全な大きさの数値から秘密鍵を逆算するのは計算上困難です。今回は候補が256通りに限られ、通常は現実的でない総当たりを短時間で実行できました。通常の鍵生成では安全な大きさの値を使いますが、今回は生成時の値が小さすぎたことが問題でした。

eMudhraは証明書を失効し、新規発行も停止

研究者のWayne氏は10月17日、公開されている証明書データを調べる中で弱い鍵を発見し、Mozillaなどに報告しました。Mozillaは報告を受けた後、独自に秘密鍵を復元し、脆弱性を確認しました。

eMudhraは、証明書生成スクリプトの誤りで弱い鍵の組が別に作られ、正規の鍵と似たラベルを持っていたため署名に選ばれたと説明しました。同社は影響を受けた8件を失効させ、G3ルート配下での新規証明書発行を停止しました。

eMudhraはMozillaに、影響を受けた中間証明書の大半は本番環境で使われず、エンドユーザー向け証明書の発行に使われた証拠も見つかっていないと伝えました。弱い鍵は2025年4月の作成以降、復元して悪用できる状態でしたが、悪用の証拠は見つかっていません。

FirefoxやGoなどが更新を提供

Mozillaは10月17日、失効した証明書の一覧を配信するOneCRLを通じて、Firefoxで対象証明書をブロックしました。標準設定の利用者には、ブラウザーの更新や再起動を求めずに保護を適用しました。

10月20日にはFirefox 158.0.1と、ESR 115.43.1、ESR 153.5.1が公開されました。OneCRLの更新を受け取れない設定の利用者にも対策を届けるためのリリースです。MozillaはNSS 3.131.1でも、影響した中間証明書に署名したルート証明書を信頼リストから削除しました。

GoチームはCVE-2026-111943への対策として、Go 1.27.3と1.26.10を公開しました。これらの版では、問題の中間証明書を含む証明書チェーンが検証結果として返されないようにしています。Ubuntu、Arch Linux、Alpine Linux、Pythonのcertifiなどにも更新版が掲載され、DebianやNode.jsなどは更新待ちの状態でした。

失効情報がアプリに届く経路は一様ではない

FirefoxのOneCRLは、失効した中間証明書の一覧をブラウザーへ配信する仕組みです。Mozillaは2015年の導入説明で、一覧を定期配信すれば、利用者が更新を適用して再起動するのを待たずに失効情報を届けられると説明しています。今回もFirefoxではこの方式で対策を配信しました。

ブラウザーやOSはそれぞれ異なる失効情報の扱い方を採用しており、オンラインで認証局へ問い合わせる方式や、失効リストを取得する方式があります。Mozillaによると、OneCRLは中間証明書を対象とし、Firefoxの通常設定では認証局へのライブ問い合わせなしでブロックできます。今回のような中間証明書の問題では、ブラウザー側の失効リスト配信が更新の経路になります。

独自の証明書ストアを持つソフトや、失効確認を行わないソフトは、更新されるまで問題の証明書を信頼し続ける可能性があります。MozillaはNSSの更新も提供し、OneCRLを受け取らないMozilla系の信頼ストアを使うアプリにも対策を広げました。ブラウザーに加え、証明書ストアを持つソフトや開発環境にも更新が用意されました。