| Title | LinuxのLinux Kernelにおける不特定の脆弱性 |
|---|---|
| Summary | Linuxカーネルにおいて、以下の脆弱性が修正されました。KVMのnSVMに関するもので、nested_svm_load_cr3()が成功した際にユーザートリガ可能なWARNを削除しました。nested_svm_load_cr3()が失敗した場合のsvm_set_nested_state()内のWARNは、CR3のロード後にCPUIDを変更することでユーザースペースから簡単にトリガ可能であったため削除されました。例として、状態復元の自己テストを以下のように修正します。--- tools/testing/selftests/kvm/x86/state_test.c +++ tools/testing/selftests/kvm/x86/state_test.c @@ -280,7 +280,16 @@ int main(int argc, char *argv[]) /* 新しいVMで状態を復元します。*/ vcpu = vm_recreate_with_one_vcpu(vm); - vcpu_load_state(vcpu, state); + if (stage == 4) {+ state-sregs.cr3 = BIT(44); + vcpu_load_state(vcpu, state); + vcpu_set_cpuid_property(vcpu, X86_PROPERTY_MAX_PHY_ADDR, 36); + __vcpu_nested_state_set(vcpu, &state-nested); +} else {+ vcpu_load_state(vcpu, state); +} /* ダミーvCPUで最初はXSAVE状態を復元しません。*/ 以下のような警告が生成されます。WARNING: CPU: 30 PID: 938 at arch/x86/kvm/svm/nested.c:1877 svm_set_nested_state+0x34a/0x360 [kvm_amd] Modules linked in: kvm_amd kvm irqbypass [last unloaded: kvm] CPU: 30 UID: 1000 PID: 938 Comm: state_test Tainted: G W 6.18.0-rc7-58e10b63777d-next-vm Tainted: [W]=WARN Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:svm_set_nested_state+0x34a/0x360 [kvm_amd] Call Trace: TASK kvm_arch_vcpu_ioctl+0xf33/0x1700 [kvm] kvm_vcpu_ioctl+0x4e6/0x8f0 [kvm] __x64_sys_ioctl+0x8f/0xd0 do_syscall_64+0x61/0xad0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 ユーザースペースがCR3に「不正な」状態を押し込むのを防ごうとする代わりに、このWARNを単純に削除しました。KVMのABIはユーザースペースがSREGSの後にCPUIDを設定すること及びその逆も許可しており、KVMはゲストCPUIDに関して非常に寛容です。つまり、CPUIDを設定する際、仮想CPUモデルの強制を試みるとユーザースペースを破壊する可能性があります。このWARNはKVMに対する意味のある保護やユーザースペースにとって利益を提供しないため、破壊の可能性はほとんどないものの単純に削除しました。余計な改行も機会があれば削除しています。 |
| Possible impacts | 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| Solution | リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。 |
| Publication Date | May 8, 2026, midnight |
| Registration Date | May 18, 2026, 11:28 a.m. |
| Last Update | May 18, 2026, 11:28 a.m. |
| CVSS3.0 : 警告 | |
| Score | 5.5 |
|---|---|
| Vector | CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| Linux |
| Linux Kernel 5.14 以上 5.15.202 未満 |
| Linux Kernel 5.16 以上 6.1.165 未満 |
| Linux Kernel 6.13 以上 6.18.16 未満 |
| Linux Kernel 6.19 以上 6.19.6 未満 |
| Linux Kernel 6.2 以上 6.6.128 未満 |
| Linux Kernel 6.7 以上 6.12.75 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年05月18日] 掲載 |
May 18, 2026, 11:28 a.m. |
| Summary | In the Linux kernel, the following vulnerability has been resolved: KVM: nSVM: Remove a user-triggerable WARN on nested_svm_load_cr3() succeeding Drop the WARN in svm_set_nested_state() on nested_svm_load_cr3() failing --- tools/testing/selftests/kvm/x86/state_test.c /* Restore state in a new VM. */ /* generates: WARNING: CPU: 30 PID: 938 at arch/x86/kvm/svm/nested.c:1877 svm_set_nested_state+0x34a/0x360 [kvm_amd] Simply delete the WARN instead of trying to prevent userspace from shoving Opportunistically delete a spurious newline. |
|---|---|
| Publication Date | May 8, 2026, 11:16 p.m. |
| Registration Date | May 9, 2026, 4:13 a.m. |
| Last Update | May 12, 2026, 11:10 p.m. |