Description
In the Linux kernel, the following vulnerability has been resolved:

nexthop: avoid unlocked f6i_list walk in nh_rt_cache_flush

nh_rt_cache_flush() walks nh->f6i_list during an RTNL-serialized nexthop
replace without holding nh->lock, racing the unlocked IPv6 route
add/delete that mutate the list under nh->lock and free fib6_info
entries (nh_rt_cache_flush() is inlined into rtm_new_nexthop()):

BUG: KASAN: slab-use-after-free in nh_rt_cache_flush (net/ipv4/nexthop.c:2243)
Read of size 8 at addr ffff888012953e18 by task exploit/146
nh_rt_cache_flush (net/ipv4/nexthop.c:2243)
replace_nexthop (net/ipv4/nexthop.c:2610)
rtm_new_nexthop (net/ipv4/nexthop.c:3323)
rtnetlink_rcv_msg (net/core/rtnetlink.c:7076)

Unlike the other f6i_list walks, this one bumps each route's sernum via
fib6_update_sernum_upto_root(), which needs tb6_lock; taking nh->lock
around it would invert the established tb6_lock -> nh->lock order and
deadlock. As the only purpose is to invalidate cached dsts, bump the
IPv6 sernum for the whole netns with rt_genid_bump_ipv6() instead,
mirroring the rt_cache_flush() already done for IPv4 just above.
Published: 2026-08-15
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability comes from a race condition in the Linux kernel where the function nh_rt_cache_flush walks a list of nexthop structures without holding the required lock during a nexthop replacement. This race leads to a use‑after‑free, as evidenced by the slab-use-after-free diagnostic, and can corrupt kernel memory. The weakness involves improper locking and can be categorized as a use‑after‑free flaw.

Affected Systems

All Linux kernel builds that include the original nexthop implementation and have not incorporated the patches in commits 44f53e4331a30fabc38a411fae7524341b618db3 and 4787a6d2629b4e8c0b6bacab1f75c1660eca44d9 are vulnerable. No specific version numbers are supplied, so any kernel based on the unpatched code remains susceptible until the fix is integrated.

Risk and Exploitability

The CVSS score of 8.8 indicates high severity, while the EPSS score of less than 1% points to a low current likelihood of exploitation. The vulnerability is not listed in the CISA KEV catalog. Exploitation would require triggering the race during a nexthop replacement that also involves concurrent route modifications. A successful exploit could corrupt kernel memory and potentially allow privilege escalation. Information about the necessary permissions to trigger the race is not explicitly provided, but typical privileged routing operations would be required.

Generated by OpenCVE AI on August 18, 2026 at 05:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the kernel to a version that includes commits 44f53e4331a30fabc38a411fae7524341b618db3 and 4787a6d2629b4e8c0b6bacab1f75c1660eca44d9 or to a distribution-provided kernel that incorporates the fix.
  • If compiling the kernel from source, apply the patch from the referenced commits directly and rebuild.
  • Apply the principle of least privilege by limiting or removing CAP_NET_ADMIN from untrusted processes, reducing the likelihood that a user can change routing tables and trigger the race.

Generated by OpenCVE AI on August 18, 2026 at 05:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 18 Aug 2026 04:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Tue, 18 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 13:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 17 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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


Sat, 15 Aug 2026 16:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: nexthop: avoid unlocked f6i_list walk in nh_rt_cache_flush nh_rt_cache_flush() walks nh->f6i_list during an RTNL-serialized nexthop replace without holding nh->lock, racing the unlocked IPv6 route add/delete that mutate the list under nh->lock and free fib6_info entries (nh_rt_cache_flush() is inlined into rtm_new_nexthop()): BUG: KASAN: slab-use-after-free in nh_rt_cache_flush (net/ipv4/nexthop.c:2243) Read of size 8 at addr ffff888012953e18 by task exploit/146 nh_rt_cache_flush (net/ipv4/nexthop.c:2243) replace_nexthop (net/ipv4/nexthop.c:2610) rtm_new_nexthop (net/ipv4/nexthop.c:3323) rtnetlink_rcv_msg (net/core/rtnetlink.c:7076) Unlike the other f6i_list walks, this one bumps each route's sernum via fib6_update_sernum_upto_root(), which needs tb6_lock; taking nh->lock around it would invert the established tb6_lock -> nh->lock order and deadlock. As the only purpose is to invalidate cached dsts, bump the IPv6 sernum for the whole netns with rt_genid_bump_ipv6() instead, mirroring the rt_cache_flush() already done for IPv4 just above.
Title nexthop: avoid unlocked f6i_list walk in nh_rt_cache_flush
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-08-17T05:48:40.842Z

Reserved: 2026-08-15T05:44:03.916Z

Link: CVE-2026-74561

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:18:01.590

Modified: 2026-08-17T06:19:54.190

Link: CVE-2026-74561

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74561 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T06:00:04Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference