Skip to main content

Linux Kernel CVE-2026-64269

| EUVDEUVD-2026-48981 CRITICAL
2026-07-25 Linux GHSA-ffxc-rc5x-r6rp
9.1
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
vuln.today AI
6.4 MEDIUM

Requires a connected RTRS peer over an RDMA fabric (AV:A/PR:L) and disclosure only occurs under no/passthrough IOMMU configs (AC:H); leak gives C:H and connection abort gives A:H.

3.1 AV:A/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:H
4.0 AV:A/AC:H/AT:N/PR:L/UI:N/VC:H/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE
8.2 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
High

Lifecycle Timeline

5
Analysis Generated
Jul 27, 2026 - 05:29 vuln.today
CVSS changed
Jul 27, 2026 - 05:22 NVD
9.1 (CRITICAL)
Patch available
Jul 25, 2026 - 11:18 EUVD
CVE Published
Jul 25, 2026 - 08:49 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 25, 2026 - 08:49 cve.org
CRITICAL 9.1

DescriptionCVE.org

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).

AnalysisAI

Host memory disclosure to a remote RDMA peer in the Linux kernel's RDMA/rtrs-srv (RTRS server) transport allows a connected peer to read beyond a mapped chunk buffer. When answering an RTRS READ, rdma_write_sg() set the outbound RDMA-Write source-SGE length directly from the attacker-controlled wire descriptor field desc[0].len, which was only rejected when zero, and used the PD-wide local_dma_lkey rather than the chunk's own MR, so the verbs layer never constrained the transfer to max_chunk_size. A peer advertising a length larger than the chunk can force the posted RDMA write to read past the chunk into adjacent host memory (disclosed back to the peer under passthrough/no-IOMMU configs) or trigger a translation fault that aborts the connection. No public exploit identified at time of analysis and EPSS is low (0.21%).

Technical ContextAI

RTRS (RDMA Transport) is the Linux kernel RDMA messaging layer underpinning RNBD (RDMA Network Block Device), enabled via CONFIG_INFINIBAND_RTRS_SERVER and running over InfiniBand/RoCE fabrics. In the server READ path (rtrs_srv_rdma_done -> process_io_req -> process_read -> rdma_write_sg), the server builds an IB_WR_RDMA_WRITE to return data to the peer. rd_msg points into the chunk buffer the peer previously filled via RDMA-WRITE-WITH-IMM, so desc[0].len is fully peer-controlled. While msg_id and off were validated against queue_depth and max_chunk_size, the separate desc[0].len field was not bounded to the chunk size, and because the source SGE used the fixed chunk start address plus the PD-wide local_dma_lkey (not the chunk-specific MR mapping), the RNIC does not clamp the length to the registered region. The root-cause class is an out-of-bounds read (CWE-125) driven by missing length validation of externally supplied data; the CWE was listed as N/A in the input. The fix rejects any descriptor length above max_chunk_size, mirroring the existing off >= max_chunk_size check.

RemediationAI

Apply the vendor-released stable-kernel patches: fixed versions are 5.15.212, 6.1.178, 6.6.145, 6.12.96, 6.18.39, 7.1.4, and 7.2-rc1 (upstream fix commits at git.kernel.org, e.g. https://git.kernel.org/stable/c/5a45d0aa1fa50a333ce5763ade744e2d89838667 and the a35b7a8728a5 mainline commit); Ubuntu users should update per USN-8726-1 / USN-8727-1. Where immediate patching is not possible, the most effective compensating control is to unload or avoid the rtrs-srv module (blacklist the RNBD/RTRS server) if the RDMA block-device service is not required, which eliminates the exposed code path entirely at the cost of losing RNBD export. If RTRS must run, restrict the RDMA fabric to trusted peers only (partitioning/subnet manager access control on InfiniBand, isolated RoCE VLAN/segment) so untrusted hosts cannot establish RTRS sessions, and enabling a translating IOMMU (not passthrough) downgrades the impact from host-memory disclosure to a connection-aborting fault - at a potential DMA-performance cost.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

CVE-2026-64269 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy