CVE-2026-45856 Details
Description
In the Linux kernel, the following vulnerability has been resolved: RDMA/uverbs: Validate wqe_size before using it in ib_uverbs_post_send ib_uverbs_post_send() uses cmd.wqe_size from userspace without any validation before passing it to kmalloc() and using the allocated buffer as struct ib_uverbs_send_wr. If a user provides a small wqe_size value (e.g., 1), kmalloc() will succeed, but subsequent accesses to user_wr->opcode, user_wr->num_sge, and other fields will read beyond the allocated buffer, resulting in an out-of-bounds read from kernel heap memory. This could potentially leak sensitive kernel information to userspace. Additionally, providing an excessively large wqe_size can trigger a WARNING in the memory allocation path, as reported by syzkaller. This is inconsistent with ib_uverbs_unmarshall_recv() which properly validates that wqe_size >= sizeof(struct ib_uverbs_recv_wr) before proceeding. Add the same validation for ib_uverbs_post_send() to ensure wqe_size is at least sizeof(struct ib_uverbs_send_wr).
A vulnerability exists in the Linux kernel's RDMA/uverbs component, specifically within the ib_uverbs_post_send() function. This issue arises because the function uses the wqe_size parameter from userspace without proper validation before allocating memory with kmalloc(). As a result, a user could provide a small wqe_size value, such as 1, which would be accepted by kmalloc(). However, this would lead to an out-of-bounds read from the kernel heap, as subsequent accesses to certain fields would exceed the allocated buffer. This vulnerability could potentially leak sensitive kernel information to userspace. Furthermore, an excessively large wqe_size could trigger a warning in the memory allocation process, as noted by syzkaller. This lack of validation is inconsistent with ib_uverbs_unmarshall_recv(), which correctly checks that wqe_size is greater than or equal to the size of struct ib_uverbs_recv_wr() before proceeding.
The vulnerability has been addressed by adding proper validation for the wqe_size parameter in the ib_uverbs_post_send() function. Users should update to the latest version of the Linux kernel where this fix has been applied.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/01c9b152647dc70dc06a4a2eff86ebb3b3c76075 | kernel.org | Patch |
| https://git.kernel.org/stable/c/1956f0a74ccf5dc9c3ef717f2985c3ed3400aab0 | kernel.org | Patch |
| https://git.kernel.org/stable/c/9b5ac1c15334d46c0dbd49d64a2257b929500163 | kernel.org | Patch |
| https://git.kernel.org/stable/c/9c15ec4cd4e7f57c6bbcb4e73e99290f150dd2a7 | kernel.org | Patch |
| https://git.kernel.org/stable/c/bef70ff9841990658610512b4a18e4a88c9b4df6 | kernel.org | Patch |
| https://git.kernel.org/stable/c/bf1feed1a7886af945f92890493aefd2b5c9928a | kernel.org | Patch |
| https://git.kernel.org/stable/c/bf4454da8b1e712714628c0a0d6e7845bb40790a | kernel.org | Patch |
| https://git.kernel.org/stable/c/d533425ac1f2925b4fc3e4ed9b9d72362cb23475 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-125 | Out-of-bounds Read | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 5.0, < 5.10.252 >= 5.11, < 5.15.202 >= 5.16, < 6.1.165 >= 6.2, < 6.6.128 >= 6.7, < 6.12.75 >= 6.13, < 6.18.14 >= 6.19, < 6.19.4 |
CPE
Remediation
| |
Change History
4 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 25, 2026 | Initial Analysis | [email protected] |
| Jun 17, 2026 | CVE Modified | kernel.org |
| May 30, 2026 | CVE Modified | kernel.org |
| May 27, 2026 | New CVE Received | kernel.org |