【活用ガイド】

JVNDB-2026-037085

OpenSSL ProjectのOpenSSLにおける解放済みメモリの使用に関する脆弱性

概要

問題の概要:複数のスレッドが同じX.509証明書を同時に使用すると、そのキャッシュされた拡張データが、別のスレッドによってまだ使用されている最中に解放されてしまう可能性があります。影響の概要:遠隔の認証されていないピアが、マルチスレッド対応のTLSクライアントや、クライアント証明書を要求するマルチスレッド対応のTLSサーバーをクラッシュさせる可能性があります。この問題は、同じ信頼されたCA証明書に対して最初に構築される証明書チェーンが複数の接続によって同時に構築される場合に発生します。これはUse-After-Freeの読み取りであり、プロセスがクラッシュしサービス拒否(DoS)を引き起こす可能性が高い問題です。CWE: CWE-416:Use After Free説明:OpenSSLは証明書のX.509v3拡張のデコード済み値を、初めて必要になった際にX509オブジェクト内にキャッシュします。OpenSSL 4.0では、このキャッシュは2段階で構築されます。まず証明書に対して読み取りロックを保持した状態で拡張値を計算し、次に書き込みロックを取得して証明書に結果を設定します。読み取りロックは他の読み取り者を排除しないため、複数のスレッドが同じ証明書のキャッシュを同時に計算することが可能です。その後、書き込みロックを取得する各スレッドは自分自身の結果を証明書に設定し、前のスレッドによって設定された値を解放します。しかし、前のスレッドはすでにキャッシュを完了とマークし、呼び出し元にそのポインタを返している場合があるため、呼び出し元が解放済みメモリを読んでしまいます。スレッド間で共有される証明書は、その拡張が初めてデコードされる際に曝露されます。TLSでは、リスクのある証明書はチェーン検証用に提供された信頼されたCA証明書であり、これらはすべての接続で共有され、チェーンが初めて構築される際に拡張がデコードおよびキャッシュされます。ピアから送信される証明書は接続毎に別々にデコードされ共有されないため影響を受けません。TLSクライアントがサーバー証明書を検証する場合やクライアント証明書を要求かつ検証するTLSサーバーの場合において、このUse-After-Freeは同じ信頼されたCAに対して最初のチェーンを複数接続が同時に構築した場合にのみ発生します。FIPS影響:なし。FIPSモジュールはX.509証明書の処理をOpenSSL FIPSモジュールの境界外で行っているため、この影響を受けません。OpenSSL 4.0はこの問題に対して脆弱です。OpenSSL 3.6、3.5、3.4、3.0、1.1.1、および1.0.2は本問題の影響を受けません。OpenSSL 4.0のユーザーはOpenSSL 4.0.3にアップグレードすべきです。本問題は2026年8月27日にTim Becker(Xint.io)によって報告され、2026年8月31日にaydinmercanによる独立した公開報告もありました。修正はBob Beckによって開発されました。報告者はTim Becker(Xint.io)とaydinmercanであり、修正者はBob Beckです。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 7.5 (重要) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


OpenSSL Project
  • OpenSSL 4.0.0 以上 4.0.3 未満

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

OpenSSL Project
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 解放済みメモリの使用(CWE-416) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-84783
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-84783
  2. 関連文書 : Don't update the certificate in cache_extensions if we lost the race.  openssl/openssl@de97a1a  GitHub
更新履歴

  • [2026年10月08日]
      掲載