What’s Vulnerable › Vulnerabilities

CVE-2024-57890: RDMA/uverbs: Prevent integer overflow issue

Description

In the Linux kernel, the following vulnerability has been resolved: RDMA/uverbs: Prevent integer overflow issue In the expression "cmd.wqe_size * cmd.wr_count", both variables are u32 values that come from the user so the multiplication can lead to integer wrapping. Then we pass the result to uverbs_request_next_ptr() which also could potentially wrap. The "cmd.sge_count * sizeof(struct ib_uverbs_sge)" multiplication can also overflow on 32bit systems although it's fine on 64bit systems. This patch does two things. First, I've re-arranged the condition in uverbs_request_next_ptr() so that the use controlled variable "len" is on one side of the comparison by itself without any math. Then I've modified all the callers to use size_mul() for the multiplications.

Affected products

How to fix

Upgrade to a fixed version: Linux kernel 5.10.233, 5.15.176, 5.4.289, 6.1.124. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2024-57890 or the next vulnerability affects your stack