{"id":"CVE-2026-97940","title":"In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: fix fib6 walker UAF on seq stop\n\nipv6_route_iter_active() treats a walker in FWS_U at the table root as\nalready unlinked","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: fix fib6 walker UAF on seq stop\n\nipv6_route_iter_active() treats a walker in FWS_U at the table root as\nalready unlinked. fib6_del_route() can move a still-linked…","severity":"high","cvss":7.8,"cvssVector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","vendor":"Linux","product":"Linux","affected":["Linux >= 8d2ca1d7b5c3e63b3a8a81ae99015b615c5f2bf7 < 0eede1689610e9eeaf729ba86fd1321799eb91a0","Linux >= 8d2ca1d7b5c3e63b3a8a81ae99015b615c5f2bf7 < b89b691dd00bf39b9ba39ab9446f8c62f419fa7b","Linux >= 8d2ca1d7b5c3e63b3a8a81ae99015b615c5f2bf7 < 4553cfafa8d05c4ce20b1d18f79d9bb3b303fc02","Linux >= 8d2ca1d7b5c3e63b3a8a81ae99015b615c5f2bf7 < 19b4ed644d68098cc62ab612727f40d30f43476c","Linux 3.13"],"published":"2026-09-25","updated":"2026-09-25","sourceUpdated":"2026-09-25T15:18:02.713","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-97940","references":[{"url":"https://git.kernel.org/stable/c/0eede1689610e9eeaf729ba86fd1321799eb91a0","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/19b4ed644d68098cc62ab612727f40d30f43476c","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/4553cfafa8d05c4ce20b1d18f79d9bb3b303fc02","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/b89b691dd00bf39b9ba39ab9446f8c62f419fa7b","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"}],"tags":["nvd","cve.org"],"ingestedAt":"2026-09-25T11:06:38.882Z","slug":"CVE-2026-97940","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nipv6: fix fib6 walker UAF on seq stop\n\nipv6_route_iter_active() treats a walker in FWS_U at the table root as\nalready unlinked. fib6_del_route() can move a still-linked walker into\nthat same state when the current leaf is the last route at the root,\nso ipv6_route_native_seq_stop() skips fib6_walker_unlink(). The seq\nprivate object can then be freed while it remains on\nnet->ipv6.fib6_walkers. A later route deletion walks the dangling list\nand uses the freed walker.\n\nUse the list head as membership state and reinitialize it when\nunlinking. Keep the existing w->node check so a never-started iterator\nwith a zeroed private object is not treated as linked.\n\nThe same stop helper is used by /proc/net/ipv6_route and by the BPF\nipv6_route iterator. The BPF show path only widens the race.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"twilight","depthScore":43,"depthScoreParts":{"impact":42.9,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[{"seq":210950,"id":"CVE-2026-97940","ts":1790349118298,"field":"cvss","old":null,"new":"7.8"},{"seq":210949,"id":"CVE-2026-97940","ts":1790349118298,"field":"severity","old":"none","new":"high"}]}