セキュリティ研究者が最近、認証局(CA)であるeMudhraが発行した8件の中間証明書が、極めて脆弱な秘密鍵で保護されていることを明らかにしました。本来は巨大なランダムな数値であるべきこれらの鍵は、実際には4、56、115といった非常に小さな整数であることが判明しました。楕円曲線暗号のセキュリティは、公開鍵から対応する秘密鍵を逆算することの困難さに依存しているため、これらの「1バイト」の鍵は容易に解読可能でした。研究者は一般的なハードウェアを使用して、1秒未満で全8件の鍵を復元することに成功し、そのCAが発行しうるすべての証明書を事実上侵害しました。

この画像は、記事で説明されているeMudhra CAのセキュリティ侵害を視覚的に表現したものです。
この脆弱性は、2025年4月の鍵生成儀式における人的ミスまたはスクリプトの誤りに起因しています。384ビットのランダムな数値を生成する代わりに、システムはわずか数ビットのエントロピーしか持たない鍵を生成しました。生成された公開鍵は構造的に正しく見え、すべての標準的なチェックを通過しましたが、本質的に安全ではありませんでした。Google、Apple、Microsoft、Mozillaを含む主要なブラウザベンダーは、その後、これらの中間証明書をブロックし、場合によってはeMudhraのルートを信頼済みストアから削除する措置を講じました。しかし、研究者は、ブラウザは多くの場合、このような誤発行を検出するために証明書透明性(CT)を強制するものの、他の多くのソフトウェアコンポーネントはそれを実施していないと指摘しています。
リスクの範囲はウェブブラウジングにとどまらず、広大な非ブラウザクライアントのエコシステムにまで及びます。`curl`、Python、Node.js、およびさまざまなパッケージマネージャーなどのツールは、通常、ローカルのCAバンドルを信頼しており、証明書の失効やCTログをチェックしない場合があります。これにより、ファームウェアが固定されたIoTデバイス、依存関係を取得するCI/CDパイプライン、およびサーバー間APIコールなどが、傍受に対して脆弱な状態となります。これらのデバイスは更新パスが容易でないことが多いため、2039年の期限まで侵害された証明書を信頼し続ける可能性があります。この事件は、クライアントエコシステムの規模があまりにも大きいため、盗まれたファイルではなくソフトウェアの「信頼」の中に存在する侵害を封じ込めることが困難であるという、公開鍵基盤(PKI)における重大なギャップを浮き彫りにしました。