CVE-2024-44970: net/mlx5e: SHAMPO, Fix invalid WQ linked list unlink
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: SHAMPO, Fix invalid WQ linked list unlink
When all the strides in a WQE have been consumed, the WQE is unlinked
from the WQ linked list (mlx5_wq_ll_pop()). For SHAMPO, it is possible
to receive CQEs with 0 consumed strides for the same WQE even after the
WQE is fully consumed and unlinked. This triggers an additional unlink
for the same wqe which corrupts the linked list.
Fix this scenario by accepting 0 sized consumed strides without
unlinking the WQE again.
Security readout for executives and security teams
Plain-English summary
A flaw in the Linux mlx5e network driver can corrupt an internal queue when SHAMPO processing handles a late completion reporting zero consumed strides. Corruption occurs because an already-removed work item is removed again. The supplied CVSS rating is 9.8, but the sources do not establish practical consequences or real-world exploitation.
Executive priority
Treat as an urgent validation and patching item for Linux hosts using relevant mlx5e networking. Prioritize exposed or business-critical systems, while avoiding assumptions that every Linux host is affected. The critical score warrants prompt action, but exploitation evidence and concrete operational impact remain incomplete.
Technical view
After all strides in a WQE are consumed, mlx5e removes it from the work-queue linked list. SHAMPO may subsequently produce another CQE for that WQE with zero consumed strides, causing a second unlink and linked-list corruption. The kernel fix accepts zero-sized consumed strides without unlinking the WQE again.
Likely exposure
Exposure is most likely on systems running affected Linux kernels where the mlx5e driver and SHAMPO receive path are used. The supplied version data names 5.16, 6.1.105, 6.6.46, 6.10.5, and 6.11, but includes ambiguous entries; confirm affected ranges and backports with the distribution vendor.
Exploitation context
The bundle marks this CVE as absent from KEV and provides no evidence of active exploitation or a public exploit. Although the supplied CVSS vector describes network-accessible, unauthenticated impact, the sources do not explain attacker control, prerequisites, reliability, or demonstrated confidentiality, integrity, and availability effects.
Researcher notes
The core invariant failure is a duplicate mlx5_wq_ll_pop() after a WQE was fully consumed and unlinked. A later SHAMPO CQE with zero consumed strides triggers the invalid second unlink. The fix suppresses unlinking for that zero-sized case. No CWE, proof of exploitation, detailed trigger conditions, or reliable impact demonstration is supplied.
Mitigation direction
Upgrade to a vendor-supported kernel containing the referenced upstream fix or an approved backport.
Consult the Linux distribution advisory for precise affected and fixed package versions.
Prioritize systems using mlx5e and SHAMPO until their patch status is confirmed.
If immediate upgrading is impossible, request vendor-supported feature-specific mitigation guidance.
Validation and detection
Record the running kernel and installed distribution kernel package versions.
Determine whether the mlx5e driver and SHAMPO receive path are present and active.
Verify the vendor kernel includes the relevant fix or documented backport.
Review kernel and network-driver telemetry for queue corruption, faults, or unexplained instability.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-44970 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.