CVE Catalog

CVE-2026-97940

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Summary

In the Linux kernel, the IPv6 subsystem has a use-after-free vulnerability in the fib6 walker iterator during sequence stop. A walker can be moved to the FWS_U state, which is incorrectly treated as unlinked, leading to the seq object being freed while still on the fib6_walkers list, and later route deletions use the freed walker.

Risk Assessment

This can lead to system crashes or incorrect IPv6 routing behavior, and potentially to privilege escalation if exploited by a local attacker.

Recommendation

Apply the kernel patch that uses the list head as membership state and reinitializes it when unlinking to prevent UAF.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: ipv6: fix fib6 walker UAF on seq stop ipv6_route_iter_active() treats a walker in FWS_U at the table root as already unlinked. fib6_del_route() can move a still-linked walker into that same state when the current leaf is the last route at the root, so ipv6_route_native_seq_stop() skips fib6_walker_unlink(). The seq private object can then be freed while it remains on net->ipv6.fib6_walkers. A later route deletion walks the dangling list and uses the freed walker. Use the list head as membership state and reinitialize it when unlinking. Keep the existing w->node check so a never-started iterator with a zeroed private object is not treated as linked. The same stop helper is used by /proc/net/ipv6_route and by the BPF ipv6_route iterator. The BPF show path only widens the race.

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