CVE-2026-23417 bpf: Fix constant blinding for PROBE_MEM32 stores
Attackers can bypass BPF constant blinding protections in the Linux kernel when JIT hardening is enabled, potentially aiding exploitation of other vulnerabilities.
- 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-23417?
CVE-2026-23417 is a medium-severity vulnerability in Linux kernel, published on 2 Apr 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: Fix constant blinding for PROBE_MEM32 stores
BPF_ST | BPF_PROBE_MEM32 immediate stores are not handled by bpf_jit_blind_insn(), allowing user-controlled 32-bit immediates to survive unblinded into JIT-compiled native code when bpf_jit_harden >= 1.
The root cause is that convert_ctx_accesses() rewrites BPF_ST|BPF_MEM to BPF_ST|BPF_PROBE_MEM32 for arena pointer stores during verification, before bpf_jit_blind_constants() runs during JIT compilation. The blinding switch only matches BPF_ST|BPF_MEM (mode 0x60), not BPF_ST|BPF_PROBE_MEM32 (mode 0xa0). The instruction falls through unblinded.
Add BPF_ST|BPF_PROBE_MEM32 cases to bpf_jit_blind_insn() alongside the existing BPF_ST|BPF_MEM cases. The blinding transformation is identical: load the blinded immediate into BPF_REG_AX via mov+xor, then convert the immediate store to a register store (BPF_STX).
The rewritten STX instruction must preserve the BPF_PROBE_MEM32 mode so the architecture JIT emits the correct arena addressing (R12-based on x86-64). Cannot use the BPF_STX_MEM() macro here because it hardcodes BPF_MEM mode; construct the instruction directly instead.
Which versions are affected by CVE-2026-23417?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2026-23417?
Apply the vendor's patch.
Is CVE-2026-23417 being exploited?
There is no known exploitation of CVE-2026-23417 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2026-23417, DEBIAN-CVE-2026-23417, GHSA-3j46-wx9h-x693, ROOT-OS-DEBIAN-13-CVE-2026-23417, UBUNTU-CVE-2026-23417.