CVE-2026-64034
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
net: mana: Fix TOCTOU double-fetch of hwc_msg_id from DMA buffer
In mana_hwc_rx_event_handler(), resp->response.hwc_msg_id is read from DMA-coherent memory and bounds-checked, then mana_hwc_handle_resp() re-reads the same field from the same DMA buffer for test_bit() and pointer arithmetic.
DMA-coherent memory is mapped uncacheable on x86 and is shared, unencrypted, in Confidential VMs (SEV-SNP/TDX), so each load goes directly to host-visible memory. A H/W can modify the value between the check and the use, bypassing the bounds validation.
Fix this by reading hwc_msg_id exactly once using READ_ONCE() into a stack-local variable in mana_hwc_rx_event_handler(), and passing the validated value as a parameter to mana_hwc_handle_resp().
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < a201c66edf2ebc6cfdc3813a889ba20fecebfae3 | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 70ad2dff8d052a85dfef15715b531f38a29108cf | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 566f42fb67a7ebfed6650e407e5b72e6b3e83bf7 | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 6180a06bbc99fd9114b8db4be6c4d46e40f046ef | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 09ec063d87c2dd3fa6f3561361a017bd882e9f37 | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 3c4db56ccd13dd020fbf43afabaee74a40ec75e4 | affected |
| Linux | Linux | ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f < 35f0f0a2536a4d604b4dbad92c85c4a8fdebb870 | affected |
| Linux | Linux | 5.13 | affected |
| Linux | Linux | 0 < 5.13 | unaffected |
| Linux | Linux | 5.15.209 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.175 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.142 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.92 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.34 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.11 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/a201c66edf2ebc6cfdc3813a889ba20fecebfae3
- https://git.kernel.org/stable/c/70ad2dff8d052a85dfef15715b531f38a29108cf
- https://git.kernel.org/stable/c/566f42fb67a7ebfed6650e407e5b72e6b3e83bf7
- https://git.kernel.org/stable/c/6180a06bbc99fd9114b8db4be6c4d46e40f046ef
- https://git.kernel.org/stable/c/09ec063d87c2dd3fa6f3561361a017bd882e9f37
- https://git.kernel.org/stable/c/3c4db56ccd13dd020fbf43afabaee74a40ec75e4
- https://git.kernel.org/stable/c/35f0f0a2536a4d604b4dbad92c85c4a8fdebb870
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.