CVE-2025-37849

7.8 HIGH

📋 TL;DR

This CVE describes a use-after-free vulnerability in the Linux kernel's KVM (Kernel-based Virtual Machine) subsystem for ARM64 architecture. When vCPU creation fails, the kernel fails to properly clean up vGIC (virtual Generic Interrupt Controller) structures, potentially allowing attackers to cause memory corruption or kernel crashes. This affects systems running Linux with KVM virtualization on ARM64 hardware.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific affected versions not specified in CVE description; check kernel commit history for exact ranges
Operating Systems: Linux distributions with ARM64 support and KVM enabled
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when KVM virtualization is enabled and used on ARM64 systems; requires CAP_SYS_ADMIN or equivalent privileges to trigger

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash, potential privilege escalation to kernel mode, or arbitrary code execution in kernel context

🟠

Likely Case

Kernel crash or system instability when malicious users trigger vCPU creation failures in KVM

🟢

If Mitigated

No impact if KVM is not used or if proper access controls prevent unprivileged users from creating vCPUs

🌐 Internet-Facing: LOW - Requires local access to trigger KVM operations
🏢 Internal Only: MEDIUM - Local users with KVM privileges could exploit this to crash systems or potentially escalate privileges

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires local access and ability to create vCPUs via KVM; timing and memory manipulation would be needed for reliable exploitation

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check kernel commits: 07476e0d932afc53c05468076393ac35d0b4999e, 2480326eba8ae9ccc5e4c3c2dc8d407db68e3c52, 250f25367b58d8c65a1b060a2dda037eea09a672, 5085e02362b9948f82fceca979b8f8e12acb1cc5, c322789613407647a05ff5c451a7bf545fb34e73

Vendor Advisory: https://git.kernel.org/stable/c/07476e0d932afc53c05468076393ac35d0b4999e

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Reboot system to load new kernel. 3. Verify KVM module loads correctly.

🔧 Temporary Workarounds

Disable KVM on ARM64

linux

Prevent KVM virtualization from being used on affected ARM64 systems

modprobe -r kvm
echo 'blacklist kvm' >> /etc/modprobe.d/blacklist.conf

Restrict KVM access

linux

Limit which users can access KVM devices to prevent exploitation

chmod 600 /dev/kvm
setfacl -m u:root:rw /dev/kvm

🧯 If You Can't Patch

  • Restrict KVM device access to trusted users only
  • Monitor for failed vCPU creation attempts in system logs

🔍 How to Verify

Check if Vulnerable:

Check kernel version and verify if KVM ARM64 support is enabled: lsmod | grep kvm && uname -r

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes the fix commits: git log --oneline | grep -E '07476e0d|2480326e|250f2536|5085e023|c3227896'

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops messages
  • Failed vCPU creation in KVM logs
  • System crashes during virtualization operations

Network Indicators:

  • None - local vulnerability only

SIEM Query:

source="kernel" AND ("KVM" AND "vCPU" AND "failed") OR ("Oops" AND "use-after-free")

🔗 References

📤 Share & Export