In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In… (CVE-2026-64268)
In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In drivers/infiniband/sw/siw/siw_qp_rx.c, siw_proc_rresp() places each inbound Read Response DDP segment at sge->laddr + wqe->processed and then accumulates wqe->processed, but it never checks the running total against the sink buffer length on continuation segments. siw_check_sge() resolves and validates the sink memory only on the first fragment (the if (!*mem) branch), and siw_rresp_check_ntoh() compares the cumulative length against wqe->bytes only on the final segment (the !frx->more_ddp_segs guard). A connected siw peer that answers an outstanding RREAD with Read Response segments that keep the DDP Last flag clear, carrying more total payload than the RREAD requested, drives wqe->processed past the validated sink buffer; the next siw_rx_data() call writes out of bounds at sge->laddr + wqe->processed. siw runs iWARP over ordinary routable TCP, so the peer is the remote end of an established RDMA connection and needs no local privilege. Bound every segment before placement, exactly as siw_proc_send() and siw_proc_write() already do for their tagged and untagged paths, and terminate the connection with a base-or-bounds DDP error when the Read Response would overrun the sink buffer. This is the second receive-path length fix for this file. A separate change rejects an MPA FPDU length that underflows the per-fragment remainder in the header decode; that guard does not cover this case, because here each individual segment length is self-consistent and only the accumulated placement offset overruns the buffer.
AI Analysis
Technical Summary
The Linux kernel's siw RDMA driver (infiniband/sw/siw/siw_qp_rx.c) improperly handles the placement of inbound Read Response DDP segments by accumulating processed lengths without verifying the total against the sink buffer length on continuation segments. While initial fragment validation occurs, subsequent segments can cause wqe->processed to exceed the validated buffer size, resulting in out-of-bounds writes at sge->laddr + wqe->processed. This vulnerability can be triggered by a remote connected siw peer over an established RDMA connection without requiring local privileges. The fix involves bounding every segment before placement and terminating the connection with a DDP error if an overrun would occur.
Potential Impact
A remote attacker with an established RDMA connection can cause out-of-bounds memory writes in kernel space by sending malicious Read Response segments that exceed the requested length. This could lead to memory corruption, potential kernel crashes, or other undefined behavior. No local privileges are required, but the attacker must be a connected RDMA peer.
Mitigation Recommendations
A fix is available that bounds each Read Response segment before placement and terminates connections that would cause buffer overruns. Users should apply the official Linux kernel patches that address this vulnerability. Patch status is not yet confirmed in this data; check the vendor advisory for current remediation guidance.
In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In… (CVE-2026-64268)
Description
In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In drivers/infiniband/sw/siw/siw_qp_rx.c, siw_proc_rresp() places each inbound Read Response DDP segment at sge->laddr + wqe->processed and then accumulates wqe->processed, but it never checks the running total against the sink buffer length on continuation segments. siw_check_sge() resolves and validates the sink memory only on the first fragment (the if (!*mem) branch), and siw_rresp_check_ntoh() compares the cumulative length against wqe->bytes only on the final segment (the !frx->more_ddp_segs guard). A connected siw peer that answers an outstanding RREAD with Read Response segments that keep the DDP Last flag clear, carrying more total payload than the RREAD requested, drives wqe->processed past the validated sink buffer; the next siw_rx_data() call writes out of bounds at sge->laddr + wqe->processed. siw runs iWARP over ordinary routable TCP, so the peer is the remote end of an established RDMA connection and needs no local privilege. Bound every segment before placement, exactly as siw_proc_send() and siw_proc_write() already do for their tagged and untagged paths, and terminate the connection with a base-or-bounds DDP error when the Read Response would overrun the sink buffer. This is the second receive-path length fix for this file. A separate change rejects an MPA FPDU length that underflows the per-fragment remainder in the header decode; that guard does not cover this case, because here each individual segment length is self-consistent and only the accumulated placement offset overruns the buffer.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Linux kernel's siw RDMA driver (infiniband/sw/siw/siw_qp_rx.c) improperly handles the placement of inbound Read Response DDP segments by accumulating processed lengths without verifying the total against the sink buffer length on continuation segments. While initial fragment validation occurs, subsequent segments can cause wqe->processed to exceed the validated buffer size, resulting in out-of-bounds writes at sge->laddr + wqe->processed. This vulnerability can be triggered by a remote connected siw peer over an established RDMA connection without requiring local privileges. The fix involves bounding every segment before placement and terminating the connection with a DDP error if an overrun would occur.
Potential Impact
A remote attacker with an established RDMA connection can cause out-of-bounds memory writes in kernel space by sending malicious Read Response segments that exceed the requested length. This could lead to memory corruption, potential kernel crashes, or other undefined behavior. No local privileges are required, but the attacker must be a connected RDMA peer.
Mitigation Recommendations
A fix is available that bounds each Read Response segment before placement and terminates connections that would cause buffer overruns. Users should apply the official Linux kernel patches that address this vulnerability. Patch status is not yet confirmed in this data; check the vendor advisory for current remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-86rp-m36j-7r28
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-64268"]
- Ecosystems
- []
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a65420f9c2644c7f80868fd
Added to database: 07/25/2026, 23:09:03 UTC
Last enriched: 07/25/2026, 23:42:27 UTC
Last updated: 09/07/2026, 10:52:10 UTC
Views: 69
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.