Linux Kernel XArray Component General Protection Fault Vulnerability

Vulnerability

A vulnerability in the Linux kernel's XArray component can lead to a general protection fault. This issue arises in the 'xas_create_range()' function when it encounters a multi-order entry. The function misinterprets the entry as a node, leading to a null pointer dereference and a crash. This vulnerability has been present since the introduction of 'xas_create_range()', but the specific scenario causing the crash requires a race condition to be hit in a live kernel.

Impact

Exploitation of this vulnerability causes a null pointer dereference, leading to a crash.

Reproduction

The vulnerability can be reproduced by calling 'xas_create_range()' when there is already an entry present that is of order greater than or equal to 'XA_CHUNK_SHIFT'. This misinterpretation leads to a dereference of 'xa_node->parent', causing a null pointer dereference and a general protection fault. In a live kernel, this requires the 'khugepaged' process to hit a race condition.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
3.9
remediation
0.0
relevance
0.0
threat
4.8
urgency
2.9
incentive
1.7

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