What’s Vulnerable › Vulnerabilities
CVE-2026-72111: bpf: Reset register bounds before narrowing retval range in check_mem_access()
- Severity: high (CVSS 8.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-08-15 · updated 2026-10-16
Description
In the Linux kernel, the following vulnerability has been resolved: bpf: Reset register bounds before narrowing retval range in check_mem_access() When the BPF verifier processes a context load of an LSM hook return value, it calls __mark_reg_s32_range() to narrow the register to the hook's valid range. However, __mark_reg_s32_range() intersects the new range with the register's existing bounds using max_t()/min_t() rather than replacing them. If the destination register carries stale bounds from a prior instruction (e.g. BPF_MOV64_IMM), the intersection can produce a range narrower than reality. The verifier then believes it knows the register's exact value, while at runtime the actual hook return value is loaded, creating a verifier/runtime mismatch that can be used to bypass BPF memory safety checks. The else branch already calls mark_reg_unknown() to reset register state before any narrowing. Apply the same reset in the is_retval path so stale bounds are cleared before __mark_reg_s32_range() intersects.
Affected products
- Linux kernel: from 6.10.13 before 6.11; from 6.11.2 before 6.12; 6.12 — fixed in 6.11, 6.12, 7.2
How to fix
Upgrade to a fixed version: Linux kernel 6.11, 6.12, 7.2. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/0993dc5fc619c0b25ab1310cb11d65e78351c0fe
- https://git.kernel.org/stable/c/5a55f9aecc08990940e70f0c7048a80850c5a16a
- https://git.kernel.org/stable/c/5e0b273e0a62cc04ec338c7b502797c66c2ed42a
- https://git.kernel.org/stable/c/bde92f65042ec14389782dd223f706bf6b59ce5d
Get alerted when CVE-2026-72111 or the next vulnerability affects your stack