概要
リモートサービスは、複数の脆弱性の影響を受けます。
説明
リモートホストにインストールされている OpenSSL は、1.1.1ze より前のバージョンです。したがって、1.1.1ze のアドバイザリに記載されている複数の脆弱性の影響を受けます。
- 問題の要約: 無効な形式の PKCS#12 ファイルを処理するアプリケーションにおいて、無効なポインター、または NULL ポインターのデリファレンスが発生する可能性があります。影響の要約: 無効な形式の PKCS#12 ファイルを処理するアプリケーションにおいて、メモリ読み取り時に無効なポインター、または NULL ポインターのデリファレンスにより、サービス拒否を引き起こす可能性があります。PKCS#12 解析コードに、型の取り違えの脆弱性が存在し、型を最初に検証せずに ASN1_TYPE __ メンバーにアクセスすると、無効なポインターの読み込みが発生します。配置場所は 1 バイトのアドレス空間に制限されているため、試行されるポインター操作は、0x00 から 0xFF の間のアドレスのみを対象にすることができます。この範囲はゼロページに対応しており、最新のオペレーティングシステムではマッピングされていません。そのため、確実にクラッシュを引き起こし、結果としてサービス拒否のみが発生します。この問題を悪用するには、ユーザーまたはアプリケーションが、悪意を持って細工された PKCS#12 ファイルを処理する必要があります。通常は、定義上信頼できる秘密鍵を保存するために使用されるため、アプリケーション内で信頼できない PKCS#12 ファイルを受け入れることは稀です。前述の理由により、この問題は重要度低と評価されました。3.5、3.4、3.3、3.0 の FIPS モジュールは、この問題による影響を受けません。これは、CMS PKCS12実装が OpenSSL FIPS モジュール境界の外部にあるためです。OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1 は、この問題に対して脆弱ではありません。OpenSSL 1.0.2 は、この問題の影響を受けません。OpenSSL 1.1.1ze (1.1.1 以降が影響を受けます) で修正されました。(CVE-2026-22795)
- 問題の要約: 署名された PKCS#7 データの署名検証に型の取り違えの脆弱性が存在し、最初に型を検証せずに ASN1_TYPE ユニオンメンバーにアクセスすると、無効な形式の PKCS#7 データを処理する際に、無効なポインター、または NULL ポインターのデリファレンスが発生します。影響の要約: PKCS#7 データの署名認証を実行するアプリケーション、または PKCS7_digest_from_attributes() 関数を直接呼び出すアプリケーションにおいて、読み取り時に無効なポインター、または NULL ポインターをデリファレンスすることで、サービス拒否を引き起こす可能性があります。PKCS7_digest_from_attributes() 関数は、型を検証することなく、メッセージダイジェスト属性値にアクセスします。型が V_ASN1_OCTET_STRING でない場合、ASN1_TYPE ユニオンを介して無効なメモリにアクセスすることになり、クラッシュが発生します。この脆弱性を悪用するには、攻撃者が不正な形式の署名付き PKCS#7 を、それを検証するアプリケーションに提供する必要があります。エクスプロイトの影響はサービス拒否のみに限定されます。また、PKCS7 API はレガシーであり、アプリケーションは代わりに CMS API を使用する必要があります。前述の理由により、この問題は重要度低と評価されました。3.5、3.4、3.3、3.0 の FIPS モジュールは、この問題による影響を受けません。これは、CMS PKCS#7 解析の実装が OpenSSL FIPS モジュール境界の外部にあるためです。OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1、1.0.2 は、この問題に対して脆弱ではありません。OpenSSL 1.1.1ze (1.1.1 以降が影響を受けます) で修正されました。(CVE-2026-22796)
- 問題の要約: 無効な形式の PKCS#12 ファイルを処理する際に、PKCS12_item_decrypt_d2i_ex() 関数内で NULL ポインターデリファレンスを引き起こす可能性があります。影響の要約: NULL ポインターデリファレンスによりクラッシュが引き起こされ、PKCS#12 ファイルを処理するアプリケーションがサービス拒否に陥る可能性があります。PKCS12_item_decrypt_d2i_ex() 関数は、oct パラメーターをデリファレンスする前に NULL であるかどうかをチェックしません。無効な形式の PKCS#12 ファイルにおいて PKCS12_unpack_p7encdata() から呼び出された場合、このパラメーターは NULL となり、クラッシュを引き起こす可能性があります。脆弱性はサービス拒否に限定されており、コード実行やメモリ漏洩につながることはありません。この問題を悪用するには、攻撃者が無効な形式の PKCS#12 ファイルを、それを処理するアプリケーションに提供する必要があります。そのため、弊社のセキュリティポリシーに従って、この問題は重要度低と評価されました。3.6、3.5、3.4、3.3、3.0 の FIPS モジュールは、この問題による影響を受けません。これは、PKCS#12 実装が OpenSSL FIPS モジュール境界の外部にあるためです。
OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1、1.0.2 は、この問題に対して脆弱ではありません。OpenSSL 1.1.1ze (1.1.1 以降が影響を受けます) で修正されました。(CVE-2025-69421)
- 問題の要約: タイムスタンプ応答検証コードに型の取り違えの脆弱性が存在します。これにより、最初に型を検証せずに ASN1_TYPE ユニオンメンバーにアクセスすることで、無効なタイムスタンプ応答ファイルを処理するときに無効なポインター、または NULL ポインターのデリファレンスが発生します。影響の概要: 無効な形式のタイムスタンプ応答で TS_RESP_verify_response() を呼び出すアプリケーションにおいて、読み取り時に無効なポインター、または NULL ポインターをデリファレンスすることで、サービス拒否が発生する可能性があります。ossl_ess_get_signing_cert() 関数と ossl_ess_get_signing_cert_v2() 関数は、型を検証せずに署名証明書の属性値にアクセスします。
型が V_ASN1_SEQUENCE でない場合、ASN1_TYPE ユニオンを介して無効なメモリにアクセスすることになり、クラッシュが発生します。この脆弱性を悪用するには、攻撃者が無効な形式のタイムスタンプ応答を、それを検証するアプリケーションに提供する必要があります。タイムスタンププロトコル (RFC 3161) は広く使用されておらず、この悪用による影響はサービス拒否に限定されます。前述の理由により、この問題は重要度低と評価されました。3.5、3.4、3.3、3.0 の FIPS モジュールは、この問題による影響を受けません。これは、タイムスタンプ応答の実装が OpenSSL FIPS モジュール境界の外部にあるためです。OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1 は、この問題に対して脆弱ではありません。OpenSSL 1.0.2 は、この問題の影響を受けません。OpenSSL 1.1.1ze (1.1.1 以降が影響を受けます) で修正されました。(CVE-2025-69420)
- 問題の要約: 非 ASCII BMP コードポイントを含む BMPString (UTF-16BE) フレンドリ名を持つ悪意のある PKCS#12 ファイルで、PKCS12_get_friendlyname() 関数を呼び出すと、割り当てられたバッファーの前に 1 バイトの書き込みが発生する可能性があります。影響の概要: 領域外の書き込みによってメモリ破損を引き起こされる可能性があり、サービス拒否など、さまざまな結果が生じる可能性があります。OPENSSL_uni2utf8() 関数は、PKCS#12 BMPString (UTF-16BE) を UTF-8 への 2 パス変換で実行します。2 番目のパスでは、UTF-8 バイトを出力するときに、ヘルパー関数 bmp_to_utf8() が、残りの UTF-16 ソースバイトカウントを宛先バッファ容量として UTF8_putc() に誤って転送します。U+07FF 上の BMP コードポイントでは、UTF-8 には 3 バイトが必要ですが、転送容量は 2 バイトだけです。次に UTF8_putc() が -1 を返し、この負の値が検証なしで出力長に追加され、長さが負になります。その後、末尾の NULL バイトが負のオフセットで書き込まれ、ヒープ割り当てバッファ外での書き込みが発生します。
この脆弱性は、攻撃者が制御する PKCS#12 ファイルを解析する際に、公開 PKCS12_get_friendlyname() API を介して到達できます。PKCS12_parse() はこの問題を回避する異なるコードパスを使用しますが、PKCS12_get_friendlyname() は脆弱な関数を直接呼び出します。この脆弱性を悪用するには、攻撃者が悪意のある PKCS#12 ファイルを提供し、アプリケーションによって解析できるようにする必要がありますが、攻撃者は割り当てられたバッファの前に 1 つのゼロバイトの書き込みをトリガーするだけで済みます。そのため、弊社のセキュリティポリシーに従って、この問題は重要度低と評価されました。3.6、3.5、3.4、3.3、3.0 の FIPS モジュールは、この問題による影響を受けません。これは、PKCS#12 実装が OpenSSL FIPS モジュール境界の外部にあるためです。OpenSSL 3.6、3.5、3.4、3.3、3.0、1.1.1 は、この問題に対して脆弱ではありません。OpenSSL 1.0.2 は、この問題の影響を受けません。OpenSSL 1.1.1ze (1.1.1 以降が影響を受けます) で修正されました。(CVE-2025-69419)
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。
ソリューション
OpenSSL バージョン 1.1.1ze 以降にアップグレードしてください。
プラグインの詳細
ファイル名: openssl_1_1_1ze.nasl
エージェント: windows, macosx, unix
設定: 徹底したチェックを有効にする (optional)
サポートされているセンサー: Continuous Assessment, Nessus Agent, Nessus
リスク情報
ベクトル: CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C
ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
現状ベクトル: CVSS:3.0/E:U/RL:O/RC:C
脆弱性情報
CPE: cpe:/a:openssl:openssl
必要な KB アイテム: installed_sw/OpenSSL
エクスプロイトの容易さ: No known exploits are available