Debian DLA-3325-1 : openssl - LTS セキュリティ更新

high Nessus プラグイン ID 171643

概要

リモートの Debian ホストに 1 つ以上のセキュリティ関連の更新プログラムがありません。

説明

リモートの Debian 10 ホストには、dla-3325 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。

- AES-NI アセンブリ最適化実装を使用する 32 ビット x86 プラットフォームの AES OCB モードは、一部の状況でデータ全体を暗号化しません。これにより、書き込まれなかったメモリに既存の 16 バイトのデータが漏洩する可能性があります。インプレース暗号化の特別なケースでは、平文の 16 バイトが漏洩します。OpenSSL は、TLS および DTLS の OCB ベースの暗号化パッケージをサポートしていないため、どちらも影響を受けません。OpenSSL 3.0.5 で修正されました (3.0.0-3.0.4 が影響を受けました)。OpenSSL 1.1.1q で修正されました (1.1.1-1.1.1p が影響を受けます)。(CVE-2022-2097)

- OpenSSL RSA Decryption 実装にタイミングベースのサイドチャネルが存在するため、Bleichenbacher スタイルの攻撃でネットワーク全体の平文を十分に復元できる可能性があります。復号化を成功させるためには、攻撃者が非常に多くの試行メッセージを復号化のために送信できる必要があります。
この脆弱性は、すべての RSA パディングモードに影響します:PKCS#1 v1.5、RSA-OEAP および RSASVE。たとえば、TLS 接続では、暗号化されたプレマスターシークレットをサーバーに送信するために、RSA が一般的にクライアントによって使用されます。クライアントとサーバー間の真の接続を観察した攻撃者が、この欠陥を利用して、試行メッセージをサーバーに送信し、それらの処理にかかった時間を記録する可能性があります。十分な量のメッセージの後、攻撃者が元の接続に使用されていたプレマスターシークレットを復元し、その接続を介して送信されたアプリケーションデータを復号化できる可能性があります。(CVE-2022-4304)

- 関数 PEM_read_bio_ex() が BIO から PEM ファイルを読み取り、名前 (例:
CERTIFICATE)、任意のヘッダーデータおよびペイロードデータを解析およびデコードします。関数が成功した場合、name_out、header、および data 引数に、関連するデコード済みデータを含むバッファへのポインターが入力されます。
呼び出し元には、これらのバッファを解放する責任があります。ペイロードデータが 0 バイトになる PEM ファイルを構築することが可能です。この場合、PEM_read_bio_ex() は失敗コードを返しますが、すでに解放されているバッファへのポインターがヘッダー引数に入力されます。呼び出し元もこのバッファを解放すると、二重解放が発生します。これはおそらくクラッシュにつながります。これを悪用して、解析用の悪意のある PEM ファイルを提供し、サービス拒否攻撃を仕掛ける攻撃者が存在する可能性があります。PEM_read_bio() および PEM_read() 関数は、PEM_read_bio_ex() の単純なラッパーであるため、これらの関数も直接影響を受けます。これらの関数は、PEM_X509_INFO_read_bio_ex() や SSL_CTX_use_serverinfo_file() などのその他の多数の OpenSSL 関数からも間接的に呼び出されるため、やはり脆弱です。PEM_read_bio_ex() が失敗コードを返す場合、呼び出し側はヘッダー引数を解放しないため、これらの関数の一部の OpenSSL 内部使用は脆弱ではありません。これらの場所には、PEM_read_bio_TYPE() 関数や、OpenSSL 3.0 で導入されたデコーダーが含められます。OpenSSL asn1parse コマンドラインアプリケーションも、この問題の影響を受けます。(CVE-2022-4450)

- パブリック API 関数 BIO_new_NDEF は、BIO を介して ASN.1 データをストリーミングするために使用されるヘルパー関数です。これは、SMIME、CMS、および PKCS7 ストリーミング機能をサポートするために OpenSSL の内部で主に使用されますが、エンドユーザーのアプリケーションから直接呼び出されることもあります。関数は、呼び出し元から BIO を受け取り、その前に新しい BIO_f_asn1 フィルター BIO を追加して BIO チェーンを形成し、BIO チェーンの新しいヘッドを呼び出し元に返します。特定の状況で、たとえば CMS 受信者の公開鍵が無効な場合、新しいフィルター BIO が解放され、関数は失敗を示す NULL の結果を返します。ただし、この場合、BIO チェーンは適切にクリーンアップされず、呼び出し元によって渡された BIO は、以前に解放されたフィルター BIO への内部ポインターを依然として保持します。呼び出し元が BIO で BIO_pop() を呼び出し続けると、メモリ解放後使用 (Use After Free) が発生します。これはおそらくクラッシュにつながります。このシナリオは、内部関数 B64_write_ASN1() で直接発生します。このため、BIO_new_NDEF() が呼び出され、その後 BIO で BIO_pop() 呼び出される可能性があります。この内部関数は、パブリック API 関数 PEM_write_bio_ASN1_stream、PEM_write_bio_CMS_stream、PEM_write_bio_PKCS7_stream、SMIME_write_ASN1、SMIME_write_CMS および SMIME_write_PKCS7 によって順番に呼び出されます。これにより影響を受ける可能性があるその他のパブリック API 関数には、i2d_ASN1_bio_stream、BIO_new_CMS、BIO_new_PKCS7、i2d_CMS_bio_stream、i2d_PKCS7_bio_stream があります。OpenSSL cms および smime コマンドラインアプリケーションも同様に影響を受けます。(CVE-2023-0215)

- X.509 GeneralName 内の X.400 アドレス処理に関連する型の取り違えの脆弱性があります。
X.400 アドレスは ASN1_STRING として解析されていましたが、GENERAL_NAME のパブリック構造体の定義で x400Address フィールドのタイプが ASN1_TYPE として不適切に指定されていました。このフィールドは、その後、OpenSSL 関数 GENERAL_NAME_cmp によって、ASN1_STRING ではなく ASN1_TYPE として解釈されます。CRL チェックが有効な場合 (アプリケーションが X509_V_FLAG_CRL_CHECK フラグを設定するなど)、この脆弱性により、攻撃者が任意のポインターを memcmp 呼び出しに渡し、メモリの内容を読み取ったり、サービス拒否を引き起こしたりする可能性があります。ほとんどの場合、攻撃者は証明書チェーンと CRL の両方を提供する必要があります。どちらも有効な署名を必要としません。攻撃者がこれらの入力の 1 つのみをコントロールする場合、他の入力には CRL 配布ポイントとして X.400 アドレスがすでに含められている必要がありますが、これはよくあることではありません。このため、この脆弱性の影響を受ける可能性が最も高いのは、ネットワークを介して CRL を取得するための独自の機能を実装しているアプリケーションのみです。(CVE-2023-0286)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションの自己報告されたバージョン番号にのみ依存しています。

ソリューション

openssl パッケージをアップグレードしてください。

Debian 10 buster では、これらの問題はバージョン 1.1.1n-0+deb10u4 で修正されています。

参考資料

https://security-tracker.debian.org/tracker/source-package/openssl

https://www.debian.org/lts/security/2023/dla-3325

https://security-tracker.debian.org/tracker/CVE-2022-2097

https://security-tracker.debian.org/tracker/CVE-2022-4304

https://security-tracker.debian.org/tracker/CVE-2022-4450

https://security-tracker.debian.org/tracker/CVE-2023-0215

https://security-tracker.debian.org/tracker/CVE-2023-0286

https://packages.debian.org/source/buster/openssl

プラグインの詳細

深刻度: High

ID: 171643

ファイル名: debian_DLA-3325.nasl

バージョン: 1.5

タイプ: local

エージェント: unix

公開日: 2023/2/20

更新日: 2023/9/4

サポートされているセンサー: Agentless Assessment, Frictionless Assessment Agent, Nessus Agent, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 6.0

CVSS v2

リスクファクター: Medium

Base Score: 5

Temporal Score: 4.1

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:N

CVSS スコアのソース: CVE-2022-2097

CVSS v3

リスクファクター: High

Base Score: 7.4

Temporal Score: 6.9

ベクトル: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H

現状ベクトル: CVSS:3.0/E:F/RL:O/RC:C

CVSS スコアのソース: CVE-2023-0286

脆弱性情報

CPE: p-cpe:/a:debian:debian_linux:libssl-dev, p-cpe:/a:debian:debian_linux:libssl-doc, p-cpe:/a:debian:debian_linux:libssl1.1, p-cpe:/a:debian:debian_linux:openssl, cpe:/o:debian:debian_linux:10.0

必要な KB アイテム: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l

エクスプロイトが利用可能: true

エクスプロイトの容易さ: Exploits are available

パッチ公開日: 2023/2/20

脆弱性公開日: 2022/7/5

参照情報

CVE: CVE-2022-2097, CVE-2022-4304, CVE-2022-4450, CVE-2023-0215, CVE-2023-0286

IAVA: 2022-A-0265-S, 2022-A-0518-S