Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: RDMA/core: Validate cpu_id against nr_cpu_ids in DMAH alloc The cpu_id attribute supplied by user space through UVERBS_ATTR_ALLOC_DMAH_CPU_ID is passed directly to cpumask_test_cpu() without first verifying that the value is within the valid CPU range. Passing such untrusted data to cpumask_test_cpu() may lead to an out-of-bounds read of the underlying cpumask bitmap: the helper expands to a test_bit() that indexes the bitmap by cpu_id / BITS_PER_LONG with no bound check. In addition, on kernels built with CONFIG_DEBUG_PER_CPU_MAPS it trips the WARN_ON_ONCE() in cpumask_check(); combined with panic_on_warn this turns a bad user input into a machine reboot. Reject any cpu_id that is not smaller than nr_cpu_ids with -EINVAL before it is used. Reported by Smatch.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected d83edab562a496a42720902a1d2effccd05c37c5 before bd5e818be7964c1689fba2dad9e6bd3a827fee74; affected d83edab562a496a42720902a1d2effccd05c37c5 before 0efbb6b54ff56300867027d8e0800d0e32226a20; affected d83edab562a496a42720902a1d2effccd05c37c5 before 323c98a4ff06aa28114f2bf658fb43eb3b536bbc |
| Linux / Linux | affected 6.17; unaffected 0 before 6.17; unaffected 6.18.36 through 6.18.*; unaffected 7.0.13 through 7.0.*; unaffected 7.1 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/bd5e818be7964c1689fba2dad9e6bd3a827fee74
- https://git.kernel.org/stable/c/0efbb6b54ff56300867027d8e0800d0e32226a20
- https://git.kernel.org/stable/c/323c98a4ff06aa28114f2bf658fb43eb3b536bbc
ADP enrichment
No English description supplied.
No references supplied.