PatchSiren cyber security CVE debrief
CVE-2026-45856 Linux CVE debrief
CVE-2026-45856 is a vulnerability in the Linux kernel's RDMA/uverbs subsystem where `ib_uverbs_post_send()` fails to validate the `wqe_size` parameter from userspace before using it for memory allocation and subsequent structure access. An attacker providing a small `wqe_size` value causes out-of-bounds reads from kernel heap memory when accessing fields like `user_wr->opcode` and `user_wr->num_sge`, potentially leaking sensitive kernel information. Excessively large values trigger memory allocation warnings. The fix adds validation to ensure `wqe_size` is at least `sizeof(struct ib_uverbs_send_wr)`, matching the existing validation in `ib_uverbs_unmarshall_recv()`.
- Vendor
- Linux
- Product
- Unknown
- CVSS
- HIGH 7.1
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-27
- Original CVE updated
- 2026-06-25
- Advisory published
- 2026-05-27
- Advisory updated
- 2026-06-25
Who should care
Organizations running Linux systems with RDMA hardware (InfiniBand, RoCE, iWARP) and unprivileged user namespaces enabled; cloud providers offering RDMA-capable instances; HPC environments utilizing kernel-based RDMA verbs interfaces.
Technical summary
The vulnerability exists in `drivers/infiniband/core/uverbs_cmd.c` in the `ib_uverbs_post_send()` function. The function receives `cmd.wqe_size` from userspace via the `struct ib_uverbs_post_send` command without validation. This value is passed directly to `kmalloc()` to allocate a buffer for unmarshalling work requests. When a small `wqe_size` (e.g., 1 byte) is provided, `kmalloc()` succeeds but subsequent field accesses to `user_wr->opcode`, `user_wr->num_sge`, and other `struct ib_uverbs_send_wr` members read beyond the allocated buffer. This constitutes an out-of-bounds read from kernel heap memory, potentially disclosing sensitive information to unprivileged userspace. The fix introduces a validation check ensuring `wqe_size >= sizeof(struct ib_uverbs_send_wr)` before allocation, consistent with the existing validation pattern in `ib_uverbs_unmarshall_recv()`.
Defensive priority
medium
Recommended defensive actions
- Apply kernel updates containing the fix for CVE-2026-45856 when available from your Linux distribution
- Monitor stable kernel releases for backported patches to affected versions
- Review systems utilizing RDMA (InfiniBand, RoCE, iWARP) for potential exposure
- Consider restricting unprivileged access to RDMA devices where feasible
- Enable kernel memory hardening features (KASAN, KFENCE) to detect similar issues during testing
Evidence notes
The vulnerability description indicates this was discovered through syzkaller fuzzing, which reported memory allocation warnings for large `wqe_size` values. The fix adds a size validation check before `kmalloc()` in `ib_uverbs_post_send()`. Multiple stable kernel branches received backports as evidenced by eight distinct git.kernel.org stable commits.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-45856 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-45856
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-45856 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-45856
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/01c9b152647dc70dc06a4a2eff86ebb3b3c76075
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/1956f0a74ccf5dc9c3ef717f2985c3ed3400aab0
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/9b5ac1c15334d46c0dbd49d64a2257b929500163
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/9c15ec4cd4e7f57c6bbcb4e73e99290f150dd2a7
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/bef70ff9841990658610512b4a18e4a88c9b4df6
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/bf1feed1a7886af945f92890493aefd2b5c9928a
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/bf4454da8b1e712714628c0a0d6e7845bb40790a
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.