CVE-2026-72468 in Linuxinfo

Summary

by MITRE • 08/15/2026

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

xprtrdma: Initialize re_id before removal registration

rpcrdma_create_id() registers ep->re_rn with the rpcrdma ib_client before returning the new rdma_cm_id to rpcrdma_ep_create(). However rpcrdma_ep_create() currently stores that pointer in ep->re_id only after rpcrdma_create_id() returns.

A local administrator can race an NFS/RDMA mount against RDMA device removal. If rpcrdma_remove_one() observes the just-registered notification before rpcrdma_ep_create() assigns ep->re_id, rpcrdma_ep_removal_done() calls trace_xprtrdma_device_removal(NULL). The tracepoint dereferences id->device->name and copies id->route.addr.dst_addr, so the callback can crash the kernel with a NULL pointer dereference.

Store the rdma_cm_id in ep->re_id immediately before publishing ep->re_rn. The existing error path still destroys the id directly if registration fails; ep is then freed by the caller without using ep->re_id. Remove the later duplicate assignment in rpcrdma_ep_create().

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Analysis

by VulDB Data Team • 08/15/2026

This vulnerability exists within the Linux kernel's xprtrdma implementation, specifically affecting the RPC over RDMA transport mechanism used for network file sharing operations. The flaw stems from a race condition during the initialization sequence of RDMA communication endpoints where the rdma_cm_id pointer is not properly synchronized with the endpoint structure registration process. The vulnerability manifests when a local administrator attempts to mount NFS/RDMA filesystems concurrently with RDMA device removal operations, creating a temporal window where system state becomes inconsistent.

The technical root cause involves improper ordering of operations within the rpcrdma_create_id() and rpcrdma_ep_create() functions. During endpoint creation, rpcrdma_create_id() registers the endpoint's rdma_cm_id with the rpcrdma ib_client before returning control to rpcrdma_ep_create(), but the ep->re_id pointer is not immediately assigned. This creates a window where rpcrdma_remove_one() can observe a newly registered notification while ep->re_id remains uninitialized, leading to a critical NULL pointer dereference scenario.

The operational impact of this vulnerability is severe as it allows local administrators with system access to trigger kernel crashes through carefully timed operations involving NFS/RDMA mounts and RDMA device removal sequences. When the trace_xprtrdma_device_removal() callback executes with a NULL id parameter, it attempts to dereference id->device->name and access id->route.addr.dst_addr fields, resulting in immediate system instability and potential denial of service conditions.

The vulnerability aligns with CWE-362, which describes race conditions in concurrent programming environments where the timing of operations creates exploitable states. From an ATT&CK perspective, this represents a privilege escalation vector through local system manipulation, potentially enabling attackers to cause kernel panics or system crashes that could be leveraged for further exploitation attempts. The fix implements proper ordering by storing the rdma_cm_id in ep->re_id immediately before publishing ep->re_rn, ensuring that all subsequent callbacks have valid pointer references. This remediation directly addresses the race condition by eliminating the temporal gap between registration and assignment operations while maintaining existing error handling paths for proper resource cleanup during failure scenarios.

Responsible

Linux

Reservation

08/09/2026

Disclosure

08/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Do you know our Splunk app?

Download it now for free!