GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel BPF verifier: flexible-array relaxation allows BTF access past a MEM_ALLOC object

CVSS 7.8CVE-2026-93148Kernel, userspace & hypervisorcurated

Impact

BTF struct walking relaxes the struct-size check for accesses that land in a trailing flexible array. That is sound for ordinary type walking, but a PTR_TO_BTF_ID | MEM_ALLOC value points at an object allocated with the static BTF type size, so the relaxation let a verified program read and write past the end of the real allocation. The same gap applied to struct ID matching, so kfunc and kptr type checks could also walk off the object. The result is heap corruption in kernel allocations from a program the verifier accepted. On a multi-tenant GPU host that is a route from whatever component holds BPF load rights to full host control.

Who can reach it

Local user or container with BPF program load capability that can obtain a MEM_ALLOC BTF pointer (bpf_obj_new and friends) and walk a struct with a trailing flexible array. Requires CAP_BPF or equivalent; not reachable from a pod that cannot call bpf().

What to do

Pick up the stable kernel commits that reject the access before applying the flexible-array relaxation when walking a MEM_ALLOC object, and apply the same policy to struct ID matching. Kernel update, drain, reboot per node. No configuration-only fix.

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.