Linux Distros のパッチ未適用の脆弱性: CVE-2024-26976

medium Nessus プラグイン ID 227645

概要

Linux/Unix ホストには、ベンダーにより修正されていないことを示す脆弱性を持つ複数のパッケージがインストールされています。

説明

Linux/Unix ホストには、ベンダーが提供するパッチが利用できない脆弱性の影響を受ける複数のパッケージがインストールされています。

- Ubuntu Linux - KVM:vCPU が破壊される場合、作業キュー #PF 非同期を常にフラッシュします vCPU が完了キューをクリアしているとき(例:VM とそのすべての vCPU が破壊される場合)に、vCPU ごとの非同期 #PF 作業キューを常にフラッシュします。KVM は、KVM _module_ への最後の参照が置かれたときに、作業キューのコールバックがどれも実行されていないことを確認する必要があります。関連付けられた VM に参照を与えることで、workqueue コールバックが解放された vCPU/VM メモリを逆参照することを防ぎますが、コールバックが完了する前に KVM モジュールがアンロードされることを防ぐことはできません。kvm_put_kvm() が非同期 #PF 作業キューをフラッシュする場合、async_pf_execute() から kvm_put_kvm() を呼び出すとデッドロックが発生するため、誤った VM refcount ギフトをドロップします。
async_pf_execute() は kvm_put_kvm() が完了するまで返すことができず、kvm_put_kvm() は async_pf_execute() が完了するまで戻ることができません: 警告: CPU: 8 PID: 251 at virt/kvm/kvm_main.c:1435 kvm_put_kvm+0x2d/0x320 [kvm] リンク先: vhost_net vhost vhost_iotlbタップ kvm_intel kvm irqbypass CPU: 8 PID: 251 通信:
kworker/8:1 汚染:G W 6.6.0-rc1-e7af8d17224a-x86/gmem-vm #119 ハードウェア名:QEMU Standard PC(Q35 + ICH9、2009)、BIOS 0.0.0 2015 年 2 月 6 日 Workqueue: events async_pf_execute [kvm] RIP:
0010:kvm_put_kvm+0x2d/0x320 [kvm] 呼び出しトレース: <TASK> async_pf_execute+0x198/0x260 [kvm] process_one_work+0x145/0x2d0 worker_thread+0x27e/0x3a0 kthread+0xba/0xe0 ret_from_fork+0x2d/0x50 ret_from_fork_asm+0x11/0x20 </TASK> ---[ 終了トレース 00000000000000000 ]--- 情報: タスク kworker/8:1:251 が 120 秒以上ブロックされました。汚染:G W 6.6.0-rc1-e7af8d17224a-x86/gmem-vm #119 echo 0 > /proc/sys/kernel/hung_task_timeout_secs はこのメッセージを無効にします。 task:kworker/8:1 state:D stack:0 pid:251 ppid:2 flags:0x00004000 Workqueue: events async_pf_execute [kvm] コールトレース: <TASK> __schedule+0x33f/0xa40 schedule+0x53/0xc0 schedule_timeout+0x12a/0x140 __wait_for_common+0x8d/0x1d0
__flush_work.isra.0+0x19f/0x2c0 kvm_clear_async_pf_completion_queue+0x129/0x190 [kvm] kvm_arch_destroy_vm+0x78/0x1b0 [kvm] kvm_put_kvm+0x1c1/0x320 [kvm] async_pf_execute+0x198/0x260 [kvm] process_one_work+0x145/0x2d0 worker_thread+0x27e/0x3a0 kthread+0xba/0xe0 ret_from_fork+0x2d/0x50 ret_from_fork_asm+0x11/0x20 </TASK> kvm_clear_async_pf_completion_queue() が実際にワークキューをフラッシュする場合、 vCPU とその VM が破棄/解放される前に、async_pf_execute() のすべての呼び出しが強制的に完了するため、async_pf_execute() に参照を与える必要はありません。そして、これによりモジュールのアンロードのバグも修正されます。たとえば、vCPU ファイルが閉じると KVM モジュールへの最後の参照も配置される場合など、vCPU が解放されるまで、__fput() は最後の vCPU 参照で module_put() を実行しないためです。kvm_check_async_pf_completion() は作業項目を完了キューから外すこともあるため、作業は kvm_clear_async_pf_completion_queue() に表示されないため、作業キューをフラッシュする必要があることに注意してください。
ワークキューで待機していると、理論的には作業が完了するのを待機しているため vCPU を遅らせる可能性がありますが、これは非常に小さな可能性であり、おそらく非常に小さな遅延です。kvm_arch_async_page_present_queued() は無条件で新しいリクエストを行う、つまりゲストの入力を効果的に遅らせるため、残りの作業は実際には trace_kvm_async_pf_completed(addr, cr2_or_gpa);__kvm_vcpu_wake_up(vcpu);mmput(mm);また、mmput() は、vCPU がまだ生きている場合、ページテーブルへの最後の参照をドロップできません。つまり、vCPU がページテーブルをティアダウンする際に動かなくなることはありません。フラッシュを実行するヘルパーを追加します。特に、すべての作業項目は実際には作業項目ではない、つまり、作業キューに配置されないため、すべての作業項目のウェイクアップを処理します。偽造の workqueue エントリをフラッシュしようとすると、__flush_work() は正しく文句を出します(サニティチェックを追加した人には敬意を表します)。
注、5f6de5cbebee をコミットします(KVM:al ---truncated--- までモジュールの終了を防ぎます(CVE-2024-26976)

Nessus は、ベンダーによって報告されたパッケージの存在に依存していることに注意してください。

ソリューション

現時点で既知の解決策はありません。

参考資料

https://ubuntu.com/security/CVE-2024-26976

プラグインの詳細

深刻度: Medium

ID: 227645

ファイル名: unpatched_CVE_2024_26976.nasl

バージョン: 1.19

タイプ: Local

エージェント: unix

ファミリー: Misc.

公開日: 2025/3/5

更新日: 2026/10/29

サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 4.9

パーセンタイル: 57.12

CVSS v2

リスクファクター: Medium

基本値: 4.9

現状値: 4.2

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

CVSS スコアのソース: CVE-2024-26976

CVSS v3

リスクファクター: Medium

基本値: 5.5

現状値: 5.1

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

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

脆弱性情報

CPE: cpe:/o:canonical:ubuntu_linux:14.04:-:lts, cpe:/o:canonical:ubuntu_linux:16.04:-:lts, cpe:/o:canonical:ubuntu_linux:18.04:-:lts, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, cpe:/o:canonical:ubuntu_linux:22.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-allwinner-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.0, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-aws-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-aws-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-aws-hwe, p-cpe:/a:canonical:ubuntu_linux:linux-aws, p-cpe:/a:canonical:ubuntu_linux:linux-azure-4.15, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-azure-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-azure-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-azure-edge, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde, p-cpe:/a:canonical:ubuntu_linux:linux-azure, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-4.15, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-gcp, p-cpe:/a:canonical:ubuntu_linux:linux-gke-4.15, p-cpe:/a:canonical:ubuntu_linux:linux-gke-5.15, p-cpe:/a:canonical:ubuntu_linux:linux-gke-5.4, p-cpe:/a:canonical:ubuntu_linux:linux-gke, p-cpe:/a:canonical:ubuntu_linux:linux-gkeop-5.4, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-edge, p-cpe:/a:canonical:ubuntu_linux:linux-hwe, p-cpe:/a:canonical:ubuntu_linux:linux-intel-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-kvm, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-lts-xenial, p-cpe:/a:canonical:ubuntu_linux:linux-nvidia-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-nvidia-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.10, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.14, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.17, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.6, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.0, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.1, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oem, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.0, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oracle, p-cpe:/a:canonical:ubuntu_linux:linux-raspi2, p-cpe:/a:canonical:ubuntu_linux:linux-realtime, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-riscv, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-6.5, p-cpe:/a:canonical:ubuntu_linux:linux

必要な KB アイテム: Host/local_checks_enabled, Host/cpu, global_settings/vendor_unpatched, Host/OS/identifier

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

脆弱性公開日: 2024/5/1

参照情報

CVE: CVE-2024-26976