CVE Catalog

CVE-2026-98061

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, a tail call from a non-zero frame is modeled as a return from that frame, and the verifier makes R0 unknown and calls prepare_func_exit(). When the current frame is a synchronous callback, prepare_func_exit() enforces the callback return-value contract and marks R0 precise, triggering the "callback unexpected regs" verifier bug. A CAP_BPF task can cause a WARN and an -EFAULT BPF_PROG_LOAD. The fix rejects a tail call made directly by a callback.

Risk Assessment

A local attacker with CAP_BPF privileges can trigger a kernel warning and BPF program load failure, potentially leading to system destabilization or denial of service. The risk is moderate but can be exploited for DoS attacks.

Recommendation

Update the Linux kernel to a version with the fix. Restrict BPF access (CAP_BPF) to trusted users until the update is applied.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: bpf: Reject tail calls directly from callback frames A tail call from a non-zero frame is modeled as a return from that frame. The verifier makes R0 unknown and calls prepare_func_exit() for the taken branch. When the current frame is a synchronous callback, prepare_func_exit() enforces the callback return-value contract and marks R0 precise. Since the tail-call path synthesized R0 rather than deriving it from an instruction, precision backtracking reaches the callback-calling instruction with R0 still requested and triggers the "callback unexpected regs" verifier bug. A CAP_BPF task can therefore cause a WARN and an -EFAULT BPF_PROG_LOAD. Tail calls reachable from callbacks are already rejected later by check_max_stack_depth(). Reject a tail call made directly by a callback before constructing the inconsistent return state, using the existing diagnostic. Tail calls from ordinary subprograms keep their current behavior.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS