CVE-2026-89526: svcrdma: Validate Read chunk positions before reconstruction

Published Sep 11, 2026
·
Updated

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

svcrdma: Validate Read chunk positions before reconstruction

The RPC/RDMA Read chunk position field is supplied by the remote client and stored verbatim in the parsed chunk list. xdrcountreadsegments() checks only 4-byte alignment; it never compares the position against the received inline body length.

In the single-chunk path, svcrdmareadcompleteone() splits the head and tail kvecs at chposition. A position past the inline body underflows the tail length, exposing adjacent slab memory to the upper XDR decoder.

In the multi-chunk path, svcrdmareadmultiplechunks() computes gap lengths between chunks as unsigned subtractions from chposition. Overlapping Read chunks cause these subtractions to underflow. A final position past the inline body likewise underflows the trailing gap length. svcrdmacopyinlinerange() then copies past the receive buffer into request pages that are returned to the client through the Reply channel.

Bound inline-range copies in svcrdmacopyinlinerange() against the decoded inline RPC body saved in rcsavedarg. Reject a single Read chunk positioned beyond that body, and reject multi-chunk lists where accumulated read bytes exceed the next chunk's position. Apply the same position and overlap checks in the call-chunk interleaving path.

Affected Software

1 affected component
Linux Linux kernel

Event History

Sep 11, 2026
CVE Published
via MITRE·07:44 PM
Data Sourced
via MITRE·07:44 PM
Description

Frequently Asked Questions

1

Who can trigger this issue?

A remote RPC/RDMA client can supply the Read chunk position values that reach the vulnerable parsing and reconstruction paths. Exploitation requires sending malformed Read chunks, including positions beyond the received inline RPC body or overlapping chunks.

2

What could a successful attack expose?

Malformed chunk positions can cause unsigned length underflows and copies beyond the receive buffer. Adjacent slab memory may be exposed to the upper XDR decoder or copied into request pages returned to the client through the Reply channel.

3

Are both single- and multi-chunk requests relevant?

Yes. A single Read chunk positioned beyond the inline body affects the single-chunk reconstruction path, while overlapping chunks or a final chunk beyond the inline body affect the multi-chunk path.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203