PT-2025-3657 · Linux+5 · Linux Kernel+5
Published
2024-12-18
·
Updated
2025-10-03
·
CVE-2024-57932
CVSS v3.1
5.5
Medium
| Vector | AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Name of the Vulnerable Software and Affected Versions
Linux kernel versions prior to 6.6.74
Description
The issue is related to the GVE (Google Virtual Ethernet) driver in the Linux kernel. Dedicated XDP (eXpress Data Path) queues only exist when an XDP program is installed and the interface is up. The NDO XDP XMIT callback should return early if either of these conditions is false. If there is no loaded XDP program,
priv->num xdp queues=0, which can cause a divide-by-zero error. When the interface is down, num xdp queues remains unchanged to persist the XDP queue count for the next interface up, but the TX pointer itself would be NULL. The XDP xmit callback needs to synchronize with a device transitioning from open to close via the GVE PRIV FLAGS NAPI ENABLED bit and a synchronize net() call.Recommendations
For Linux kernel versions prior to 6.6.74, update to version 6.6.74 or later to resolve the issue. As a temporary workaround, consider disabling the XDP functionality until a patch is available. Restrict access to the GVE driver to minimize the risk of exploitation. Avoid using the
priv->num xdp queues variable in the affected code path until the issue is resolved.Exploit
Fix
NULL Pointer Dereference
Divide By Zero
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Alt Linux
Astra Linux
Linuxmint
Linux Kernel
Suse
Ubuntu