Linux Kernel Privcmd Driver Double Free Vulnerability

Vulnerability

A double free vulnerability has been identified in the Linux kernel's privcmd driver, which is used in Xen virtualization. This issue arises because the privcmd_vm_ops structure does not properly manage virtual memory area (VMA) operations. When userspace partially unmaps a privcmd mapping, the kernel splits the VMA, allowing both resulting VMAs to point to the same private data array. This duplication leads to a double free when the VMAs are closed and destroyed. The vulnerability affects Linux domains running on Xen, from kernel version 3.8 onwards.

Impact

Exploitation of this vulnerability allows a domain administrator to perform actions that bypass kernel lockdown restrictions, potentially leading to unauthorized modifications in the kernel.

Reproduction

To reproduce this vulnerability, a partial unmap operation must be performed on a privcmd mapping in a Linux domain running Xen. This can be done by using the munmap system call to unmap a portion of the privcmd VMA, which will trigger the VMA splitting process. The privcmd_close function will then be called for the unmapped portion, leading to the double free condition.

Remediation

Users can apply the patch included in the Xen Security Advisory XSA-487 to address this vulnerability. The patch is available in the Linux kernel stable tree.

Added: Apr 30, 2026, 11:20 AM
Updated: Apr 30, 2026, 11:20 AM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
4.3
remediation
7.7
relevance
7.1
threat
4.8
urgency
2.9
incentive
0.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.