{"id":"DEBIAN-CVE-2024-46830","details":"In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Acquire kvm-\u003esrcu when handling KVM_SET_VCPU_EVENTS  Grab kvm-\u003esrcu when processing KVM_SET_VCPU_EVENTS, as KVM will forcibly leave nested VMX/SVM if SMM mode is being toggled, and leaving nested VMX reads guest memory.  Note, kvm_vcpu_ioctl_x86_set_vcpu_events() can also be called from KVM_RUN via sync_regs(), which already holds SRCU.  I.e. trying to precisely use kvm_vcpu_srcu_read_lock() around the problematic SMM code would cause problems.  Acquiring SRCU isn't all that expensive, so for simplicity, grab it unconditionally for KVM_SET_VCPU_EVENTS.   =============================  WARNING: suspicious RCU usage  6.10.0-rc7-332d2c1d713e-next-vm #552 Not tainted  -----------------------------  include/linux/kvm_host.h:1027 suspicious rcu_dereference_check() usage!   other info that might help us debug this:   rcu_scheduler_active = 2, debug_locks = 1  1 lock held by repro/1071:   #0: ffff88811e424430 (&vcpu-\u003emutex){+.+.}-{3:3}, at: kvm_vcpu_ioctl+0x7d/0x970 [kvm]   stack backtrace:  CPU: 15 PID: 1071 Comm: repro Not tainted 6.10.0-rc7-332d2c1d713e-next-vm #552  Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015  Call Trace:   \u003cTASK\u003e   dump_stack_lvl+0x7f/0x90   lockdep_rcu_suspicious+0x13f/0x1a0   kvm_vcpu_gfn_to_memslot+0x168/0x190 [kvm]   kvm_vcpu_read_guest+0x3e/0x90 [kvm]   nested_vmx_load_msr+0x6b/0x1d0 [kvm_intel]   load_vmcs12_host_state+0x432/0xb40 [kvm_intel]   vmx_leave_nested+0x30/0x40 [kvm_intel]   kvm_vcpu_ioctl_x86_set_vcpu_events+0x15d/0x2b0 [kvm]   kvm_arch_vcpu_ioctl+0x1107/0x1750 [kvm]   ? mark_held_locks+0x49/0x70   ? kvm_vcpu_ioctl+0x7d/0x970 [kvm]   ? kvm_vcpu_ioctl+0x497/0x970 [kvm]   kvm_vcpu_ioctl+0x497/0x970 [kvm]   ? lock_acquire+0xba/0x2d0   ? find_held_lock+0x2b/0x80   ? do_user_addr_fault+0x40c/0x6f0   ? lock_release+0xb7/0x270   __x64_sys_ioctl+0x82/0xb0   do_syscall_64+0x6c/0x170   entry_SYSCALL_64_after_hwframe+0x4b/0x53  RIP: 0033:0x7ff11eb1b539   \u003c/TASK\u003e","modified":"2026-09-15T09:03:11.755721967Z","published":"2024-09-27T13:15:15.380Z","upstream":["CVE-2024-46830"],"references":[{"type":"ADVISORY","url":"https://security-tracker.debian.org/tracker/CVE-2024-46830"}],"affected":[{"package":{"name":"linux","ecosystem":"Debian:12","purl":"pkg:deb/debian/linux?arch=source&distro=bookworm"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.1.112-1"}]}],"versions":["6.1.106-1","6.1.106-2","6.1.106-3","6.1.27-1","6.1.37-1","6.1.38-1","6.1.38-2","6.1.38-2~bpo11+1","6.1.38-3","6.1.38-4","6.1.38-4~bpo11+1","6.1.52-1","6.1.55-1","6.1.55-1~bpo11+1","6.1.64-1","6.1.66-1","6.1.67-1","6.1.69-1","6.1.69-1~bpo11+1","6.1.76-1","6.1.76-1~bpo11+1","6.1.82-1","6.1.85-1","6.1.90-1","6.1.90-1~bpo11+1","6.1.94-1","6.1.94-1~bpo11+1","6.1.98-1","6.1.99-1"],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-46830.json"}},{"package":{"name":"linux","ecosystem":"Debian:13","purl":"pkg:deb/debian/linux?arch=source&distro=trixie"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.10.11-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-46830.json"}},{"package":{"name":"linux","ecosystem":"Debian:14","purl":"pkg:deb/debian/linux?arch=source&distro=forky"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.10.11-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2024-46830.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}