What’s Vulnerable › Vulnerabilities
CVE-2026-64008: accel/rocket: fix UAF via dangling GEM handle in create_bo
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-07-19 · updated 2026-10-02
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: accel/rocket: fix UAF via dangling GEM handle in create_bo rocket_ioctl_create_bo() inserts a GEM handle into the file's IDR via drm_gem_handle_create() early on, then performs several operations that can fail (sgt allocation, drm_mm insert, iommu_map). If any fail after the handle is live, the error path calls drm_gem_shmem_object_free() which kfree's the object without removing the handle from the IDR. This leaves a dangling handle pointing to freed slab memory. Any subsequent ioctl using that handle (PREP_BO, FINI_BO, SUBMIT) calls drm_gem_object_lookup() and dereferences freed memory (UAF). Fix by moving drm_gem_handle_create() to after all fallible operations succeed, matching the pattern used by panfrost, lima, and etnaviv. Also fix drm_mm_insert_node_generic() whose return value was silently overwritten by iommu_map_sgtable() on the next line. Add the missing error check. [tomeu: Move handle creation to the very end]
Affected products
- Linux kernel: from 6.18 before 6.18.35; from 6.19 before 7.0.12; 7.1-rc1, 7.1-rc2, 7.1-rc3, 7.1-rc4, 7.1-rc5 — fixed in 6.18.35, 7.0.12
How to fix
Upgrade to a fixed version: Linux kernel 6.18.35, 7.0.12. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/18abd88d19ea195e2e1547fca0970c2f91d77a42
- https://git.kernel.org/stable/c/451f1ccbbdb7b65021646704b15902655f8d228a
- https://git.kernel.org/stable/c/f706e6a4ce75585af979aec3dcbdce68bc76306b
Get alerted when CVE-2026-64008 or the next vulnerability affects your stack