Critical severity · published Jul 19, 2026
CVE-2026-64034
net: mana: Fix TOCTOU double-fetch of hwc_msg_id from DMA buffer
9.3
CVSS
0.1%
EPSS
No
On KEV
Description
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().
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Attack vector
Local
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.1% · higher than 2% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
KE
Kernel · Linux
5.13 before 5.15.209; 5.16 before 6.1.175; 6.2 before 6.6.142; 6.7 before 6.12.92; 6.13 before 6.18.34; 6.19 before 7.0.11; +4 more · source: NVD
LI
Linux · Linux
ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before a201c66edf2ebc6cfdc3813a889ba20fecebfae3; ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before 70ad2dff8d052a85dfef15715b531f38a29108cf; ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before 566f42fb67a7ebfed6650e407e5b72e6b3e83bf7; ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before 6180a06bbc99fd9114b8db4be6c4d46e40f046ef; ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before 09ec063d87c2dd3fa6f3561361a017bd882e9f37; ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f before 3c4db56ccd13dd020fbf43afabaee74a40ec75e4; +2 more · source: vendor