GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel bpf: percpu array inner map can be swapped for a smaller one, giving out-of-bounds access

UnscoredCVE-2026-98376Kernel, userspace & hypervisorcurated

Impact

percpu_array_map_ops used the generic map_meta_equal check, which does not compare max_entries, so an inner percpu array in a map-of-maps could be replaced by a smaller one. The JIT inlines the original template map's index_mask as an immediate, so a lookup against the replacement map indexes pptrs[] past its end - an out-of-bounds kernel access that can be turned into memory corruption and privilege escalation. Reaching it requires the ability to load BPF programs and update a map-in-map, which on a GPU node means a privileged agent or a container granted CAP_BPF: CNI dataplanes (Cilium), eBPF observability and profiling agents, and anything doing per-CPU counters. Remediation is a kernel update, which on a GPU node means draining long-running training or inference jobs.

Who can reach it

Local, and privileged: a process able to create BPF maps and perform inner-map replacement, i.e. CAP_BPF/CAP_SYS_ADMIN. Not reachable from an unprivileged tenant pod without those capabilities, and not remote.

What to do

Pick up the fix (commit 593980175389, which points percpu_array_map_ops.map_meta_equal at array_map_meta_equal) via a patched stable kernel from your distribution, then reboot each node - there is no runtime mitigation for the inlined index_mask. As an interim control, do not grant CAP_BPF or CAP_SYS_ADMIN to tenant workloads and keep BPF map-in-map use confined to trusted system agents. No fixed distribution version is stated in the record.

References

Related entries

All Kernel, userspace & hypervisor entries

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.