CRITICAL🇵🇱 Wersja polska

CVE-2026-52989

CVSS 9.8pub. 2026-06-24upd. 2026-07-10

In the Linux kernel, the following vulnerability has been resolved: nvmet-tcp: propagate nvmet_tcp_build_pdu_iovec() errors to its callers Currently, when nvmet_tcp_build_pdu_iovec() detects an out-of-bounds PDU length or offset, it triggers nvmet_tcp_fatal_error(cmd->queue) and returns early. However, because the function returns void, the callers are entirely unaware that a fatal error has occurred and that the cmd->recv_msg.msg_iter was left uninitialized. Callers such as nvmet_tcp_handle_h2c_data_pdu() proceed to blindly overwrite the queue state with queue->rcv_state = NVMET_TCP_RECV_DATA Consequently, the socket receiving loop may attempt to read incoming network data into the uninitialized iterator. Fix this by shifting the error handling responsibility to the callers.

🤖 AI Analysis
How it works

The function nvmet_tcp_build_pdu_iovec() detects invalid PDU length or offset and calls nvmet_tcp_fatal_error(), however it returns void — it does not inform callers about the error occurrence. Calling functions, such as nvmet_tcp_handle_h2c_data_pdu(), continue execution and overwrite the queue state (queue->rcv_state = NVMET_TCP_RECV_DATA), even though the message iterator cmd->recv_msg.msg_iter remained uninitialized. Consequently, the socket data reception loop may attempt to write incoming network data to an uninitialized memory area.

Impact

A remote attacker, without authentication, can cause kernel memory corruption, potentially achieving a breach of confidentiality, integrity, and system availability (RCE or kernel crash).

Mitigation & patch

Apply patches available in the manufacturer's references (commits: 046fa5c72d15, 3df42a854686, c2a11441538b, d7c8f95f599b, ea8e356acb16 in Linux kernel stable repositories). It is recommended to update to a kernel version containing the fix according to your distribution's guidance.

Who is affected

Linux kernel with the nvmet-tcp subsystem enabled; specific versions indicated in the manufacturer's references (commits in stable kernel branches).

Analysis generated by Claude AI (Anthropic) based on NVD data. Always verify with vendor.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
🔵
CHECK WITH VENDOR
No clear patch data available. Check vendor references.
Tags
Memory
CWE
References