In the Linux kernel, the following vulnerability has been resolved:
KVM: arm64: Don't retire aborted MMIO instruction
Returning an abort to the guest for an unsupported MMIO access is a documented feature of the KVM UAPI. Nevertheless, it's clear that this plumbing has seen limited testing, since userspace can trivially cause a WARN in the MMIO return:
WARNING: CPU: 0 PID: 30558 at arch/arm64/include/asm/kvm_emulate.h:536 kvm_handle_mmio_return+0x46c/0x5c4 arch/arm64/include/asm/kvm_emulate.h:536 Call trace: kvm_handle_mmio_return+0x46c/0x5c4 arch/arm64/include/asm/kvm_emulate.h:536 kvm_arch_vcpu_ioctl_run+0x98/0x15b4 arch/arm64/kvm/arm.c:1133 kvm_vcpu_ioctl+0x75c/0xa78 virt/kvm/kvm_main.c:4487 __do_sys_ioctl fs/ioctl.c:51 [inline] __se_sys_ioctl fs/ioctl.c:893 [inline] __arm64_sys_ioctl+0x14c/0x1c8 fs/ioctl.c:893 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x1e0/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x38/0x68 arch/arm64/kernel/entry-common.c:712 el0t_64_sync_handler+0x90/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598
The splat is complaining that KVM is advancing PC while an exception is pending, i.e. that KVM is retiring the MMIO instruction despite a pending synchronous external abort. Womp womp.
Fix the glaring UAPI bug by skipping over all the MMIO emulation in case there is a pending synchronous exception. Note that while userspace is capable of pending an asynchronous exception (SError, IRQ, or FIQ), it is still safe to retire the MMIO instruction in this case as (1) they are by definition asynchronous, and (2) KVM relies on hardware support for pending/delivering these exceptions instead of the software state machine for advancing PC.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel-develUpgrade kernel-libbpf-staticUpgrade python3-perf-debuginfoUpgrade kernel-modules-extraUpgrade kernel-toolsUpgrade kernel-tools-develUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade python3-perfUpgrade perfUpgrade bpftoolUpgrade kernelUpgrade kernel-libbpf-develUpgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-modules-extra-commonUpgrade bpftool-debuginfoUpgrade kernel-livepatch-6.1.124-134.200Upgrade kernel-libbpfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-headers | Mar 27, 2025 | Dec 27, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Jan 13, 2025 | Dec 27, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Dec 27, 2024 |
| Ubuntu | — | Upgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-raspiUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-gcp-64kUpgrade linux-image-genericUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-ibmUpgrade linux-image-azureUpgrade linux-image-oem-22.04aUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-lowlatencyUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-6.11.0-18-genericUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-ibm-classicUpgrade linux-image-gkeopUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-6.11.0-1015-oemUpgrade linux-image-azure-fdeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-nvidiaUpgrade linux-image-oem-22.04cUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-nvidia-64kUpgrade linux-image-generic-64kUpgrade linux-image-6.11.0-1009-azureUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1026-oemUpgrade linux-image-lowlatency-64kUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-kvmUpgrade linux-image-realtimeUpgrade linux-image-gkeop-6.8Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-oem-22.04Upgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-oracleUpgrade linux-image-oem-24.04Upgrade linux-image-oem-24.04aUpgrade linux-image-oem-22.04bUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-gcpUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-6.8.0-1027-awsUpgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-oem-24.04bUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-awsUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-generic-lpaeUpgrade linux-image-gkeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-virtual | Feb 20, 2025 | Dec 27, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 9, 2025 | Dec 27, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub