CVE-2024-49888
kernel: bpf: Fix a sdiv overflow issue
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · October 21, 2024
Updated · October 29, 2026
Description
A flaw was found in the kernel's Berkeley Packet Filter (BPF) subsystem. A privileged local user can trigger a signed division or modulo overflow when executing a BPF program on an x86_64 system. This overflow can lead to a kernel exception and subsequently cause a system crash, resulting in a Denial of Service (DoS).
Statement
The default Red Hat Enterprise Linux kernel prevents unprivileged users from being able to use eBPF by the kernel.unprivileged_bpf_disabled sysctl. This would require a privileged user with CAP_SYS_ADMIN or root to be able to abuse this flaw reducing its attack space.
For the Red Hat Enterprise Linux 9 to confirm the current state, inspect the sysctl with the command:
cat /proc/sys/kernel/unprivileged_bpf_disabled
The setting of 1 would mean that unprivileged users can not use eBPF, mitigating the flaw.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
To mitigate this issue, ensure that unprivileged users are prevented from loading eBPF programs by setting the kernel.unprivileged_bpf_disabled sysctl to 1. This is the default configuration on Red Hat Enterprise Linux.
To verify the current setting:
cat /proc/sys/kernel/unprivileged_bpf_disabled
If the value is 0, set it to 1 immediately using:
sudo sysctl -w kernel.unprivileged_bpf_disabled=1
To make this change persistent across reboots, add or modify the following line in /etc/sysctl.d/99-sysctl.conf (or a similar sysctl configuration file):
kernel.unprivileged_bpf_disabled = 1
Then, apply the changes:
sudo sysctl --system
Note that changes to sysctl parameters take effect immediately but may require a system reboot for full application in some scenarios, especially if the vulnerable kernel module was already loaded with the previous setting.
CVSS / CWE
CVSS 3.1 · 4.4CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H
CWE-190 · Integer Overflow or Wraparound