Linux Kernel virtio-net Memory Leak Vulnerability in virtnet_xsk_pool_enable()

Vulnerability

A memory leak vulnerability has been identified in the Linux kernel's virtio-net implementation, specifically within the virtnet_xsk_pool_enable() function. This issue arises when the function encounters an error and fails to properly free xsk_buffs, leading to unreferenced objects and memory leakage. The vulnerability was revealed by recent selftests added to the kernel's continuous integration.

Impact

Exploitation of this vulnerability leads to a memory leak, where unreferenced objects are not properly released, potentially causing increased memory usage and degradation of system performance.

Reproduction

The vulnerability can be reproduced by triggering an error in the virtnet_xsk_pool_enable() function, which is part of the virtio-net driver. This can be done by manipulating the XDP (eXpress Data Path) buffer pool management, specifically through the xsk_bind operation, which binds a user-space socket to a network device for packet processing. The error path of the virtnet_xsk_pool_enable() function will then be activated, causing the memory leak.

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
4.3
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.