Debian DSA-5272-1: xen - セキュリティ更新

high Nessus プラグイン ID 167052

概要

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

説明

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

- シャドウモードでの x86 PV ゲストの TLB フラッシュが不十分です。移行と L1TF を認識しないカーネルの回避策 (XSA-273 を参照) では、PV ゲストがシャドウページングモードで実行される可能性があります。XSA-401 に対処するために、コードが Xen の関数内に移動されました。このコード移動は、古いコード位置と新しいコード位置の間で変化する意味/値を逃しました。現在は変数の不適切な使用により、間違った TLB フラッシュ状態が発生し、フラッシュが必要な場合は省略されました。(CVE-2022-33745)

- P2M プールの解放に過度に時間がかかる可能性があります。ゲスト用の P2M プールバッキング第 2 レベルのアドレス変換のサイズが大きくなる可能性があります。したがって、その解放には、中間のプリエンプションチェックがない場合よりも時間がかかることがあります。これまで、プリエンプトの必要性に対するチェックはありませんでした。(CVE-2022-33746)

- Arm: 第 2 レベルのページテーブルの際限のないメモリ消費特定のアクションでは、ゲストの P2M (Physical-to-Machine) マッピングからページを削除することなどが必要です。大きなページが第 2 段階のページテーブルでゲストページをマッピングするために使用されている場合、このような削除操作により、メモリ割り当てが発生する可能性があります (大きなマッピングを個別の小さなマッピングに置き換えるため)。これらのメモリ割り当ては、グローバルメモリプールから取得されます。悪意のあるゲストが、独自の P2M マッピングを操作することで、グローバルメモリプールを使い果たす可能性があります。
(CVE-2022-33747)

- 推移的な付与コピー処理のロック順序反転 XSA-226 の一部として、欠落していたクリーンアップ呼び出しがエラー処理パスに挿入されました。その際、ロック要件は考慮されませんでした。そのため、互いに推移的な許可を許可する 2 人の協力し合うゲストが、互いに逆の順番でネスト化されたロックを取得する可能性があります。関与する許可コピー操作間のタイミングが適切だと、これにより CPU がロックアップする可能性があります。(CVE-2022-33748)

- Xenstore: ゲストが xenstored をクラッシュさせる可能性があります。XSA-115 の修正のバグにより、悪意のあるゲストが、xenstored がエラーパスでノードを作成する際に間違ったポインターを使用し、xenstored のクラッシュや xenstored のメモリ破損を引き起こして、被害を拡大する可能性があります。ドメインごとの最大ノードのクォータ値を超えるなど、エラーパスの入力をゲストが制御できます。(CVE-2022-42309)

- Xenstore: ゲストは孤立した Xenstore ノードを作成できます。エラーを引き起こすトランザクション内に複数のノードを作成することで、悪意のあるゲストが Xenstore データベースに孤立したノードを作成する可能性があります。これは、エラー後のクリーンアップでは、すでに作成されたすべてのノードが削除されないためです。この状況の後にトランザクションがコミットされると、有効な親のないノードがデータベースで永続的になる可能性があります。(CVE-2022-42310)

- Xenstore: ゲストは、xenstored をメモリ不足に陥らせる可能性があります。この CNA 情報レコードは複数の CVE に関連しています。テキストは、どの側面 / 脆弱性がどの CVE に対応するかを説明しています。悪意のあるゲストが、xenstored に大量のメモリを割り当てさせ、最終的に xenstored のサービス拒否 (DoS) を引き起こす可能性があります。ゲストが xenstored に大量のメモリを割り当てる方法はいくつかあります。- - 応答を読み取らずに xenstored に新しいリクエストを発行することにより、応答がメモリにバッファリングされます - - 複数の xenstore ウォッチを設定し、監視されたパスの下にある多くの xenstore ノードを削除するなど、多数のウォッチイベントを生成することにより - - 可能な限り多くのトランザクションで、最大許容サイズとパス長で可能な限り多くのノードを作成することにより - -トランザクション内の多くのノードにアクセスすることにより (CVE-2022-42311、CVE-2022-42312、CVE-2022-42313、CVE-2022-42314、CVE-2022-42315、CVE-2022-42316、CVE-2022-42317、CVE-2022-42318)

- Xenstore: ゲストが Xenstore に一時メモリを解放させない可能性があります。ゲストのリクエストで作業するとき、xenstored は非常に大量のメモリを一時的に割り当てる必要がある場合があります。このメモリは、リクエストが完全に終了した後にのみ解放されます。ゲストがリングページからリクエストの応答メッセージを読み取った後にのみ、リクエストが完了したと見なされます。したがって、ゲストが応答を読み取らないため、xenstored が一時メモリを解放しない可能性があります。これにより、メモリ不足が発生し、xenstored のサービス拒否 (DoS) が引き起こされる可能性があります。(CVE-2022-42319)

- Xenstore: ゲストは、削除されたドメインの Xenstore ノードにアクセスできます。Xenstore ノードのアクセス権は、ドメインごとです。ドメインがなくなると、削除されたドメインの domid を含むアクセス権が Xenstore ノードに残る可能性があります。これらのアクセス権エントリは、そのようなノードが後で書き込まれるときに修正されるため、通常これは問題ありません。新しいドメインが作成されるときに小さな時間枠があり、新しいドメインと同じ domid を持つ過去のドメインのアクセス権がまだ有効であると見なされ、新しいドメインがノードにアクセスできるようになります。これは、削除されたドメインがアクセスできるようにするためのものでした。これが発生するには、新しく作成されたドメインが dom0 によって Xenstore に導入される前に、別のドメインがノードに書き込む必要があります。(CVE-2022-42320)

- Xenstore: ゲストは、Xenstored が一部の Xenstore 操作 (Xenstore ノードのサブツリーの削除など) に再帰を使用しているスタックを使い果たすことで、xenstored をクラッシュさせる可能性があります。ネストレベルが十分に深い場合、xenstored でスタック枯渇が発生し、xenstored がクラッシュする可能性があります。(CVE-2022-42321)

- Xenstore: 共同ゲストは、任意の数のノードを作成できます。この CNA 情報レコードは、複数の CVE に関連しています。テキストは、どの側面 / 脆弱性がどの CVE に対応するかを説明しています。XSA-322 の修正以降、削除されたドメインが所有する Xenstore ノードは Dom0 が所有するように変更されます。これにより、悪意のある 2 人のゲストが任意の数の Xenstore ノードを作成する可能性があります。これは、ドメイン A にドメイン A のローカル Xenstore ツリーへのドメイン B 書き込みを許可させることで可能になります。その後、ドメイン B は多数のノードを作成し、再起動できます。ドメイン B によって作成されたノードは、Dom0 によって所有されるようになります。Dom0 のノード数は Xenstore クォータによって制限されないため、このプロセスを何度も繰り返すことで、任意の数のノードを作成できます。(CVE-2022-42322、CVE-2022-42323)

- Oxenstored 32->31 ビット整数切り捨ての問題 Ocaml の整数は、63 または 31 ビットの符号付き精度です。
Ocaml Xenbus ライブラリは、C uint32_t をリングから取り出し、Ocaml 整数に直接キャストします。64 ビットの Ocaml ビルドではこれで問題ありませんが、32 ビットのビルドでは、最上位ビットが切り捨てられ、残りに符号なし / 符号付きの混乱が生じます。これにより、負の値を予期しないロジックに負の値がフィードされ、予期しない例外がスローされる可能性があります。予期しない例外が適切に処理されず、xenstore リングから不良パケットを取り除こうとする (および失敗する) ビジーループが作成されます。(CVE-2022-42324)

- Xenstore: ゲストは、トランザクションを介して任意の数のノードを作成できます。この CNA 情報レコードは、複数の CVE と関連しています。テキストは、どの CVE がどの側面 / 脆弱性に対応するかを説明しています。ノードがトランザクションで作成され、後で同じトランザクションで削除された場合、トランザクションはエラーで終了します。このエラーが発生するのは、トランザクションの終了時に削除されたノードを処理するときのみであるため、トランザクションは部分的に実行され、アカウンティング情報は更新されません。これにより、悪意のあるゲストが任意の数のノードを作成する可能性があります。
(CVE-2022-42325、CVE-2022-42326)

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

ソリューション

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

安定版 (stable) ディストリビューション (bullseye) では、これらの問題はバージョン 4.14.5+86-g1c354767d5-1 で修正されています

参考資料

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

https://www.debian.org/security/2022/dsa-5272

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

https://packages.debian.org/source/bullseye/xen

プラグインの詳細

深刻度: High

ID: 167052

ファイル名: debian_DSA-5272.nasl

バージョン: 1.6

タイプ: local

エージェント: unix

公開日: 2022/11/7

更新日: 2023/10/25

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

リスク情報

VPR

リスクファクター: High

スコア: 7.3

CVSS v2

リスクファクター: Medium

基本値: 6.8

現状値: 5

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

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

CVSS v3

リスクファクター: High

基本値: 8.8

現状値: 7.7

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

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

脆弱性情報

CPE: p-cpe:/a:debian:debian_linux:libxen-dev, p-cpe:/a:debian:debian_linux:libxencall1, p-cpe:/a:debian:debian_linux:libxendevicemodel1, p-cpe:/a:debian:debian_linux:libxenevtchn1, p-cpe:/a:debian:debian_linux:libxenforeignmemory1, p-cpe:/a:debian:debian_linux:libxengnttab1, p-cpe:/a:debian:debian_linux:libxenhypfs1, p-cpe:/a:debian:debian_linux:libxenmisc4.14, p-cpe:/a:debian:debian_linux:libxenstore3.0, p-cpe:/a:debian:debian_linux:libxentoolcore1, p-cpe:/a:debian:debian_linux:libxentoollog1, p-cpe:/a:debian:debian_linux:xen-doc, p-cpe:/a:debian:debian_linux:xen-hypervisor-4.14-amd64, p-cpe:/a:debian:debian_linux:xen-hypervisor-4.14-arm64, p-cpe:/a:debian:debian_linux:xen-hypervisor-4.14-armhf, p-cpe:/a:debian:debian_linux:xen-hypervisor-common, p-cpe:/a:debian:debian_linux:xen-system-amd64, p-cpe:/a:debian:debian_linux:xen-system-arm64, p-cpe:/a:debian:debian_linux:xen-system-armhf, p-cpe:/a:debian:debian_linux:xen-utils-4.14, p-cpe:/a:debian:debian_linux:xen-utils-common, p-cpe:/a:debian:debian_linux:xenstore-utils, cpe:/o:debian:debian_linux:11.0

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

エクスプロイトの容易さ: No known exploits are available

パッチ公開日: 2022/11/6

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

参照情報

CVE: CVE-2022-33745, CVE-2022-33746, CVE-2022-33747, CVE-2022-33748, CVE-2022-42309, CVE-2022-42310, CVE-2022-42311, CVE-2022-42312, CVE-2022-42313, CVE-2022-42314, CVE-2022-42315, CVE-2022-42316, CVE-2022-42317, CVE-2022-42318, CVE-2022-42319, CVE-2022-42320, CVE-2022-42321, CVE-2022-42322, CVE-2022-42323, CVE-2022-42324, CVE-2022-42325, CVE-2022-42326

IAVB: 2022-B-0048-S