CVE-2022-49882

7.8 HIGH

📋 TL;DR

This CVE-2022-49882 is a use-after-free vulnerability in the Linux kernel's KVM subsystem that allows a local attacker to cause a kernel crash or potentially execute arbitrary code. The vulnerability affects systems running KVM (Kernel-based Virtual Machine) with Xen virtualization support enabled. Attackers need access to the host system to exploit this vulnerability.

💻 Affected Systems

Products:
  • Linux Kernel
Versions: Linux kernel versions before the fix commits bfa9672f8fc9 and ecbcf030b456
Operating Systems: Linux distributions with KVM and Xen support
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when KVM with Xen virtualization support is enabled and configured. Requires CONFIG_KVM_XEN=y and appropriate permissions to access /dev/kvm.

📦 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 →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel crash leading to denial of service, or potential arbitrary code execution with kernel privileges resulting in complete system compromise.

🟠

Likely Case

Kernel panic and system crash causing denial of service to all virtual machines and the host system.

🟢

If Mitigated

Limited impact if proper access controls prevent unauthorized users from making KVM ioctl calls.

🌐 Internet-Facing: LOW - Requires local access to the host system, not directly exploitable over network.
🏢 Internal Only: MEDIUM - Local attackers with access to KVM ioctl interface can cause system crashes affecting all VMs.

🎯 Exploit Status

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

Exploitation requires local access and ability to make specific KVM ioctl calls (KVM_XEN_ATTR_TYPE_SHARED_INFO and KVM_XEN_HVM_EVTCHN_SEND) in a race condition.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel with commits bfa9672f8fc9eb118124bab61899d2dd497f95ba and ecbcf030b45666ad11bc98565e71dfbcb7be4393

Vendor Advisory: https://git.kernel.org/stable/c/bfa9672f8fc9eb118124bab61899d2dd497f95ba

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Reboot the system. 3. Verify the kernel version after reboot.

🔧 Temporary Workarounds

Disable KVM Xen support

linux

Remove Xen virtualization support from KVM if not required

Ensure CONFIG_KVM_XEN=n in kernel configuration and rebuild kernel

Restrict KVM device access

linux

Limit access to /dev/kvm device to trusted users only

chmod 600 /dev/kvm
chown root:root /dev/kvm

🧯 If You Can't Patch

  • Restrict access to KVM ioctl interface to only trusted administrators
  • Monitor for suspicious KVM_XEN related ioctl calls from untrusted users

🔍 How to Verify

Check if Vulnerable:

Check if kernel version is before the fix commits: uname -r and compare with distribution's patched versions

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes the fix commits: grep -q 'bfa9672f8fc9\|ecbcf030b456' /proc/version || echo 'Vulnerable'

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic logs
  • KVM/XEN related crash dumps
  • Failed KVM ioctl operations

Network Indicators:

  • None - local exploit only

SIEM Query:

Search for: kernel panic OR oops AND (KVM OR Xen) OR failed KVM_XEN ioctl calls

🔗 References

📤 Share & Export