eMudhra認証局の秘密鍵、数字「4」など極小値が発覚

原題: Eight Bits of Trust; eMudhra's CA keys cracked in milliseconds

なぜ重要か

認証局の信頼失墜はWebPKIの根幹を揺るがし、ブラウザベンダーによるCA排除が連鎖するリスクを改めて示した事例として業界全体が参照すべき案件だ。

インドの認証局eMudhraが発行した8枚の中間証明書の秘密鍵が、ほぼゼロに等しい極小値であることが2026年10月17日に発覚した。セキュリティ研究者がApple・Google・Microsoft・Mozilla・eMudhraへ報告し、ChromeとFirefoxは即日ブロック対応を実施。Mozillaは20日にeMudhraのルート証明書をNSSから削除し、Chrome Root Store v43でも除外が決定した。

問題の核心は単純だ。P-384楕円曲線暗号の秘密鍵は本来384ビット(約10¹¹⁵通り)のランダムな数値でなければならないが、eMudhraが2025年4月に生成した8枚の中間CA証明書の秘密鍵は、それぞれ「4」「56」「115」「156」といった1バイト以内の整数だった。

セキュリティ研究者Scott Helme氏は、公開証明書から全8鍵を自身のノートPCで1秒以内に解読したと報告している。P-384では公開鍵が「d × G」(Gは曲線上の固定点)として計算されるため、dが1〜255の範囲なら最大255回の演算で逆算できる。通常の鍵強度と比べると、桁違いどころか次元が異なる脆弱性だ。

影響範囲は広い。該当する中間証明書はDV・OV・EV各TLS発行CA(2世代ずつ計6枚)とコード署名CA2枚の計8枚で、さらにSectigo傘下の「AAA Certificate Services」ルートにより2025年5月にクロス署名も行われており、合計16枚の証明書が存在する。研究者Ian Carroll氏が「封じ込め不可能」と指摘したのはこの点で、鍵が盗まれたのではなく生成段階から根本的に壊れているため、失効処理だけでは問題の性質そのものを消せない。

ChromはCRLSetの緊急更新を同日夜に配信し、MozillaはOneCRLで数時間後にブロック。20日にはNSSアップデートでeMudhraのルート証明書ごと削除した。Google Chromeも次バージョンのRoot Store v43で除外を確定させた。

証明書の構造上、d=4から生成した公開鍵は曲線上の正規の点であり、フォーマットチェックや構造検証では一切エラーが出ない。問題を検出するには実際に総当たりを試みるしかなく、通常の自動監査では見落とされる性質のものだ。eMudhraは2025年4月にこれらの鍵を生成しており、約1年半にわたってこの状態が続いていたことになる。

出典

scotthelme.co.uk — 元記事を読む →