GPU VulnDB

Database/Firmware, BMC & network fabric

Linux kernel bnxt_re: uninitialised shared page mapped to userspace leaks kernel memory

CVE-2026-74584Firmware, BMC & network fabriccurated

Impact

bnxt_re_alloc_ucontext() allocates the per-context shared page with __get_free_page() and no __GFP_ZERO, then maps it into userspace via vm_insert_page(). The driver writes only 4 bytes into it, so the remaining 4092 bytes are whatever kernel object last freed that page - handed straight to the process that opened the verbs device. On a node where tenants get direct RDMA access for RoCE traffic, that is an unprivileged read of stale kernel heap contents, useful for leaking pointers and defeating KASLR before a second bug. The leak is per-context and repeatable, so an attacker can allocate contexts in a loop and sample many freed pages.

Who can reach it

Local user on a host with a Broadcom bnxt_re RDMA device who can open /dev/infiniband/uverbsX - typically rdma group membership, or any container given the verbs device node. No privileged capability needed beyond that device access: GET_CONTEXT followed by a single mmap() at pgoff 0.

What to do

Fix is a one-line switch to get_zeroed_page(), backported across five stable branches (see the git.kernel.org commits). Install the patched kernel and reboot the node; there is no runtime knob. Until then, the only mitigation is to stop exposing /dev/infiniband/uverbs* to untrusted tenants on bnxt_re hosts, which for RoCE-attached GPU nodes usually means losing user-space RDMA.

References

Related entries

All Firmware, BMC & network fabric 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.