CVE-2026-98365

RDMA/rxe: Fix integer overflow in mr_check_range() leading to OOB access

State
Published
Severity
9.8 Critical
Published
Oct 6, 2026
Updated
Oct 19, 2026
Reserved
Sep 25, 2026

Read the record on cve.org

Description

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

RDMA/rxe: Fix integer overflow in mr_check_range() leading to OOB access

mr_check_range() validates that [iova, iova+length) falls within the registered MR range using wraparound-prone arithmetic:

if (iova < mr->ibmr.iova || iova + length > mr->ibmr.iova + mr->ibmr.length)

A remote peer can craft an RDMA-Write/Read RETH so that iova + length wraps to 0 (e.g. iova=0xfffffffffffffff8, length=8), bypassing the check. rxe_mr_iova_to_index() then computes a huge index (int idx, only guarded by WARN_ON) and rxe_mr_copy_xarray() dereferences mr->page_info[huge], causing an out-of-bounds read/write and a kernel oops that is triggerable by an unauthenticated remote peer.

Rewrite the check in overflow-safe form; the first two clauses guarantee that the subsequent subtractions do not underflow:

if (iova < mr->ibmr.iova || length > mr->ibmr.length || iova - mr->ibmr.iova > mr->ibmr.length - length)

With the fix, mr_check_range() returns -EINVAL for the crafted iova and the responder reports REMOTE_ACCESS_ERROR instead of triggering the OOB.

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 8700e3e7c4857d28ebaa824509934556da0b3e76 to before b7d2118660545a00b21e83010ded1a231c6fb8c5Affected
  • 8700e3e7c4857d28ebaa824509934556da0b3e76 to before 5d9426a74fc8cb8f375fcdc19b465a030f9b8cabAffected
  • 8700e3e7c4857d28ebaa824509934556da0b3e76 to before 2f3b705144e3a3c14184fec6e354680081fe91ecAffected
  • 8700e3e7c4857d28ebaa824509934556da0b3e76 to before 3431f525718f6b07da308cda6d44f8cb548bbd37Affected
  • 8700e3e7c4857d28ebaa824509934556da0b3e76 to before d10e2a08799e858d3e71ea4169bcd018f216d444Affected
LinuxLinux
  • 4.8Affected
  • before 4.8Not affected
  • 6.6.158 through 6.6.*Not affected
  • 6.12.112 through 6.12.*Not affected
  • 6.18.54 through 6.18.*Not affected
  • 7.2.8 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.