Description
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.
Published: 2026-09-25
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Kernel Privilege Escalation (root)
Action: Patch Immediately
AI Analysis

Impact

In the Linux kernel’s IPv6 routing subsystem, a use‑after‑free condition occurs when a route iterator is stopped while the walker is still linked. The iterator’s private object can be freed while remaining in the list, causing subsequent route deletions to dereference a dangling pointer. This flaw permits kernel memory corruption that can lead to arbitrary code execution with elevated privileges.

Affected Systems

The flaw exists in the Linux kernel’s IPv6 route walking implementation. All kernel releases containing the code that handles walkers in the IPv6 routing table, prior to the patch that follows this CVE, are impacted. No specific version range is listed in the advisory, so any system running a Linux kernel at the time of the fix that contains the affected code path is considered vulnerable.

Risk and Exploitability

The CVSS score is 7.8, and the EPSS score is less than 1%, indicating a very low exploitation probability. The vulnerability is not in the CISA KEV catalog, showing no publicly known exploits. Nonetheless, a use‑after‑free in kernel space is a high‑severity flaw that can lead to local privilege escalation. The attack vector is inferred to be local or network‑based manipulation of IPv6 routes, which could be achieved by any process with route‑management privileges.

Generated by OpenCVE AI on October 1, 2026 at 07:51 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the kernel update that includes the fix for CVE-2026-97940.
  • Restart the system or reload the networking stack to ensure the patched code is active.
  • Restrict or audit the use of BPF programs and /proc/net/ipv6_route writes so that only trusted processes can modify route tables.

Generated by OpenCVE AI on October 1, 2026 at 07:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DLA Debian DLA DLA-4841-1 linux security update
Debian DSA Debian DSA DSA-6528-1 linux security update
Ubuntu USN Ubuntu USN USN-8961-1 Linux kernel vulnerabilities
History

Sat, 03 Oct 2026 11:15:00 +0000


Thu, 01 Oct 2026 06:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 30 Sep 2026 00:15:00 +0000


Fri, 25 Sep 2026 23:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 21:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 15:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Fri, 25 Sep 2026 14:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description 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.
Title ipv6: fix fib6 walker UAF on seq stop
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-19T09:11:06.854Z

Reserved: 2026-09-25T10:18:58.204Z

Link: CVE-2026-97940

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:21.410

Modified: 2026-10-19T10:17:45.110

Link: CVE-2026-97940

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-97940 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T08:00:04Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference