CVE-2026-98132 bpf: don't downgrade half-dead scalar zero spills to STACK_ZERO
A logic error in the Linux kernel BPF verifier incorrectly downgrades stack spills, potentially breaking precision propagation chains and affecting verifier correctness.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-98132?
CVE-2026-98132 is a medium-severity vulnerability in Linux kernel, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
bpf: don't downgrade half-dead scalar zero spills to STACK_ZERO
states.c:__clean_func_state() can downgrade scalar zero spill to STACK_ZERO in the following case:
*(u64 *)(r10 - 8) = 0; ... checkpoint ... r1 = *(u32 *)(r10 - 4); ... no reads from r10-8 ...
Here 4 bytes at r10-8 are dead and verifier changes scalar spill to a combination: 0000pppp (p stands for poison). Such a change breaks precision propagation chains. All places that produce STACK_ZERO should call bpf_mark_chain_precision() for the zero source.
This patch fixes the bug in a simplest way possible: avoids converting stack spills of zero to STACK_ZERO. Two smarter approaches are possible: - do bpf_mark_chain_precision() from __clean_func_state() - check slot liveness information in check_stack_write_fixed_off()
I investigated both and the changes required are a bit tricky, hence go with a simple fix for the time being.
Which versions are affected by CVE-2026-98132?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2026-98132?
Apply the vendor's patch.
Is CVE-2026-98132 being exploited?
There is no known exploitation of CVE-2026-98132 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as DEBIAN-CVE-2026-98132, GHSA-6rp4-m24m-77pj, UBUNTU-CVE-2026-98132.