CVEvulnerability
CVE-2026-68337
- Status
- Received
- Published
- 2026-08-10
- Last modified
- 2026-09-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
bpf: Reject redirect helpers without a bpf_net_context
The bpf_redirect*() helpers and skb_do_redirect() obtain the per-task
bpf_redirect_info via bpf_net_ctx_get_ri(), which dereferences the
current->bpf_net_context unconditionally. That context is established
on the paths that run tc BPF such as sch_handle_{ingress,egress}(),
*except* for the case where {cls,act}_bpf was attached to a proper
qdisc. A program running from there reaches the NULL deref in two ways:
* It calls bpf_redirect() directly, which dereferences the context at
the top of the helper:
tc qdisc add dev eth0 root handle 1: red limit 1MB min 10KB max 20KB \
avpkt 1000 burst 100 qevent early_drop block 10
tc filter add block 10 pref 1 bpf obj redirect.o
* It simply returns TC_ACT_REDIRECT without helper call: tcf_qevent_handle()
then dispatches to skb_do_redirect(), which dereferences the context
Rather than extending bpf_net_context management into the qdisc path,
make the redirect helpers refuse to operate when no context exists, and
have tcf_qevent_handle() drop a TC_ACT_REDIRECT verdict instead of
calling skb_do_redirect(). Previous behaviour was a crash, so nothing
regresses by not supporting it.
References
- https://git.kernel.org/stable/c/0f2118b757509332bb0e65f90e5233766f14bb88 git.kernel.org
- https://git.kernel.org/stable/c/3f4920d165b29052255527d8ae7619e7ec132ece git.kernel.org
- https://git.kernel.org/stable/c/aafb093adffad91d4d071e8a7e0dcd9b1d91c94a git.kernel.org
- https://git.kernel.org/stable/c/cabfacbd5af09d3ae898ca224c4a1459e9bba15d git.kernel.org