Integer Overflow or Wraparound Affecting kernel-libbpf-devel package, versions <0:6.1.124-134.200.amzn2023


Severity

Recommended
high

Based on Amazon Linux security rating.

Threat Intelligence

EPSS
0.04% (6th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-AMZN2023-KERNELLIBBPFDEVEL-9523937
  • published27 Mar 2025
  • disclosed15 Jan 2025

Introduced: 15 Jan 2025

CVE-2024-57890  (opens in a new tab)
CWE-190  (opens in a new tab)

How to fix?

Upgrade Amazon-Linux:2023 kernel-libbpf-devel to version 0:6.1.124-134.200.amzn2023 or higher.
This issue was patched in ALAS2023-2025-809.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-libbpf-devel package and not the kernel-libbpf-devel package as distributed by Amazon-Linux. See How to fix? for Amazon-Linux:2023 relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1