CVE-2026-98252
High · 7.0CVSS
7.0
EPSS
0.1%
Published
Oct 6, 2026
CISA due date
—
Cloudanix analysis
A timing flaw in the Linux kernel's networking code can let a local user crash the system or gain elevated access when certain high-speed network features are active.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- High
- Impact
- Full Compromise
- Component
- OS kernel
- Class
- Race Condition
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Race condition in RDMA core where refcount for nlmsg_request is initialized after list_add_tail(), allowing concurrent kref_get() on a zero-initialized object and causing refcount underflow or kernel panic.
Why it matters to the business
Local attackers on affected Linux systems can trigger kernel crashes or memory corruption in RDMA/iWARP workloads, leading to denial of service or potential privilege escalation on servers handling high-performance networking.
How an attack unfolds
An attacker with local access crafts a sequence of RDMA operations that invokes iwpm_get_nlmsg_request() concurrently across CPUs. Because initialization occurs after the object is visible on a global list, a second CPU performs kref_get() before the refcount is set, triggering the addition-on-zero bug and destabilizing the kernel.
How to fix it
Upgrade to a Linux kernel version containing the fix that moves kref initialization and full field setup before list_add_tail() in iwpm_get_nlmsg_request(). Apply the patch from the RDMA subsystem or the next stable kernel release after 2026-10-06.
How to confirm the fix worked
Confirm the source change moves kref_init() and all field initialization ahead of list_add_tail() in iwpm_get_nlmsg_request(); verify the updated kernel boots and RDMA workloads no longer trigger refcount warnings under concurrent load.
Typical attack path
- Obtain local user access on a Linux host using RDMA/iWARP
- Trigger concurrent calls to iwpm_get_nlmsg_request() via crafted RDMA netlink or socket operations
- Exploit the window between list_add_tail() and kref initialization to cause refcount corruption
- Escalate to kernel panic, memory corruption, or code execution
How to detect it
Review kernel logs for refcount underflow warnings or oops traces mentioning iwpm_get_nlmsg_request or nlmsg_request; inspect RDMA netlink traffic and process activity around the time of any crash.
What your security team should do
- Prioritize kernel updates on systems exposing RDMA/iWARP interfaces
- Restrict local access and RDMA capabilities to trusted users until patched
- Monitor for kernel oops or refcount warnings in RDMA paths
- Test updated kernels in staging environments with RDMA workloads before broad deployment
The record
In the Linux kernel, the following vulnerability has been resolved: RDMA/core: fix refcount bug in iwpm_get_nlmsg_request() iwpm_get_nlmsg_request() initializes refcount _after_ list_add_tail() making it accessible to global list where another CPU can kref_get() on nlmsg_request causing a refcount "addition on 0" bug. Fix this by initializing kref _before_ list_add_tail() so refcount for nlmsg_request can be incremented/decremented normally. In addition, also initialize every field before list_add_tail().
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|