CVE-2026-64269

CVE-2026-64269

Critical · published July 25, 2026

CVSS v3.1
9.1
EPSS
1%
Percentile
53.1
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

RDMA/rtrs-srv: Bound RDMA-Write length to chunk size in rdma_write_sg

When the server answers an RTRS READ, rdma_write_sg() builds the source

scatter/gather entry for the IB_WR_RDMA_WRITE that returns data to the

peer. Its length is taken directly from the wire descriptor:

plist->length = le32_to_cpu(id->rd_msg->desc[0].len);

rd_msg points into the chunk buffer that the remote peer filled via

RDMA-WRITE-WITH-IMM (rtrs_srv_rdma_done() -> process_io_req() ->

process_read()), so desc[0].len is attacker-controlled and, before this

change, was only rejected when zero. The source address is the fixed

chunk start (dma_addr[msg_id]) and the source lkey is the PD-wide

local_dma_lkey, which is not tied to the chunk's MR mapping, so the verbs

layer does not constrain the transfer length to max_chunk_size. msg_id

and off are bounded against queue_depth and max_chunk_size in

rtrs_srv_rdma_done(), but desc[0].len is a separate field that was not

checked against the chunk size.

A peer that advertises desc[0].len larger than max_chunk_size can make

the posted RDMA write read past the chunk's mapped region. The resulting

behaviour depends on the IOMMU configuration: with no IOMMU or in

passthrough mode the read may extend into memory adjacent to the chunk

and be returned to the peer, which can disclose host memory; with a

translating IOMMU the out-of-range access is expected to fault and abort

the connection. In either case the transfer exceeds what the protocol

permits and is driven by a remote peer.

Reject a descriptor length above max_chunk_size, mirroring the existing

off >= max_chunk_size bound in rtrs_srv_rdma_done(). Legitimate clients

do not exceed it: the client sets desc[0].len to its MR length, which is

capped at the negotiated max_io_size (max_chunk_size - MAX_HDR_SIZE).

The record
Technical detail
CVSS v3.1
9.1 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00714 · 53.1th percentile
Published
2026-07-25T14:17Z
Affected products (6)
ProductVersionsFixed in
linux/linux_kernel≥ 5.8, < 5.15.2125.15.212
linux/linux_kernel≥ 5.16, < 6.1.1786.1.178
linux/linux_kernel≥ 6.2, < 6.6.1456.6.145
linux/linux_kernel≥ 6.7, < 6.12.966.12.96
linux/linux_kernel≥ 6.13, < 6.18.396.18.39
linux/linux_kernel≥ 6.19, < 7.1.47.1.4
References (8)
EPSS history
Timeline
  • 25 JUL 08:49Z
    RDMA/rtrs-srv: Bound RDMA-Write length to chunk size in rdma_write_sg
    cvelistv5