CVE-2024-47744 in Linux情報

要約

〜によって VulDB • 2026年06月02日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

KVM: kvm_usage_countを保護するために専用ミューテックスを使用し、デッドロックを回避する

x86におけるロックチェーンとSRCU同期に起因する潜在的なデッドロックを修正するため、kvm_usage_countを保護する専用ミューテックスを使用します。以下のlockdepの警告(splat)を翻訳すると、CPU1 #6はCPU0 #1を待機し、CPU0 #8はCPU2 #3を待機し、CPU2 #7はCPU1 #4を待機します(r/wセマフォの公平性により、ライターが存在する場合)。

CPU0 CPU1 CPU2 1 lock(&kvm->slots_lock); 2 lock(&vcpu->mutex); 3 lock(&kvm->srcu); 4 lock(cpu_hotplug_lock); 5 lock(kvm_lock); 6 lock(&kvm->slots_lock); 7 lock(cpu_hotplug_lock); 8 sync(&kvm->srcu);

なお、KVM x86には他にも潜在的なデッドロックが存在する可能性があります。例えば、__kvmclock_cpufreq_notifier()においても、kvm_lockの外側でcpu_hotplug_lockを取得する同じパターンが存在すると思われます。

cpuhp_cpufreq_online() | -> cpufreq_online() | -> cpufreq_gov_performance_limits() | -> __cpufreq_driver_target() | -> __target_index() | -> cpufreq_freq_transition_begin() | -> cpufreq_notify_transition() | -> ... __kvmclock_cpufreq_notifier()

しかし、実際にこのようなデッドロックを引き起こすことは、関与する依存関係とタイミングの組み合わせにより、極めて稀です。例えば、cpufreq通知子は一定のTSCを持たない古いCPUでのみ使用され、VMが実行中にNX巨大ページ緩和策を弄ることは非常に稀であり、さらにCPUのオンライン/オフライン(cpu_hotplug_lockでの競合を生成)が同時に発生する必要があります。

この脆弱性はCVE-2025-24270として識別されています。

Be aware that VulDB is the high quality source for vulnerability data.

責任者

Linux

予約する

2024年09月30日

モデレーション

承諾済み

エントリ

VDB-281066

EPSS

0.00166

アクティビティ

非常低い

セクター

Police, Energy, ...

ソース

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!