Database/Kernel, userspace & hypervisor
Linux kernel BPF verifier: stack bound arithmetic done in 32 bits could overflow
Impact
Stack-bounds checks in the BPF verifier were computed with int arithmetic while the offset could come from a kfunc argument as a u32 and the base register was only bounds-checked when variable, not when fixed. The overflow lets the verifier's stack accounting be wrong, which is a memory-safety exposure in the component whose entire job is proving a program safe before it runs in the kernel. The fix promotes the arithmetic to 64 bits. On GPU nodes this matters because the BPF path is not exotic: CNI dataplanes, observability agents and security tooling load BPF continuously, and any tenant or agent that can reach bpf() with the right privileges reaches the verifier. NVD rates the outcome as availability only. Remediating means rebooting the node, which on a GPU host is a drain, a rescheduled allocation and interrupted long-running jobs.
Who can reach it
A local process able to load BPF programs - CAP_BPF/CAP_SYS_ADMIN, or an unprivileged user if unprivileged BPF is enabled. Not reachable from the network, and not reachable at all on a node where BPF loading is restricted to trusted components.
What to do
Take the stable kernel containing commit e160b2ed94a2 (and its backports) from your distribution and reboot each node, which on a GPU host means drain, reschedule and reboot. Cheaper interim control: set kernel.unprivileged_bpf_disabled=1 and keep BPF loading limited to trusted CNI and observability components.
References
Related entries
- Linux kernel (net/tls): Sendfile() on a kTLS socket whose plaintext and ciphertext buffers are both empty drives theCVE-2023-52767 · Linux kernel (net/tls)Medium
- Linux cpufreq/amd-pstate-ut - kernel panic when loading the unit-test driver: Loading the amd-pstate unit-test moduleCVE-2023-53563 · Linux cpufreq/amd-pstate-ut - kernel panic when loading the unit-test driverMedium
- Linux kernel (net/xfrm): Structure padding in the xfrm algorithm and encapsulation templates was copied to userspaceCVE-2023-53684 · Linux kernel (net/xfrm)Medium
- Linux kernel (drivers/iommu/amd): The AMD-Vi interrupt thread dereferences a NULL domain while reporting an IOMMU pageCVE-2023-53789 · Linux kernel (drivers/iommu/amd)Medium
- Linux kernel (drivers/vfio): An uninitialized pointer in the VFIO group structure is dereferenced from a group ioctlCVE-2023-54174 · Linux kernel (drivers/vfio)Medium
- libvirt: Off-by-one in udevListInterfacesByStatus() - libvirtd crash / info leakCVE-2024-1441 · libvirtMedium
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.