◆ CVE Hub

CVE-2026-99074

ipv4: stop PMTU walk when nexthop group shrinks

Published
2026-10-23
Last modified
2026-10-23
CNA
Linux
NVD status
Received

Fetching some sources has been requested. Reload in about a minute to see them.

CVSS v3.1 (listed by NVD)
—
Not scored
CVSS v4.0 (listed by NVD)
—
Not scored
CVSS (listed by CVE.org)
—
Not scored
EPSS exploit probability
0.2%
Percentile 9.2%
as of 2026-10-24
CISA KEV
—
Not listed

Description

NVD

In the Linux kernel, the following vulnerability has been resolved: ipv4: stop PMTU walk when nexthop group shrinks Commit 7d3f3b4367f3 ("net: ipv4: Cache pmtu for all packet paths if multipath enabled") made __ip_rt_update_pmtu() update every path. For nexthop objects, fib_info_num_path() and fib_info_nhc() independently load nh->nh_grp. RCU protects each group's lifetime but does not make the loads observe the same group. If replacement shrinks the group after the loop accepts an index, fib_info_nhc() returns NULL and update_or_create_fnhe() dereferences it. A deterministic probe only widened the existing window between the real operations. On v7.2, an RTM_NEWNEXTHOP replacement published a one-member group after the PMTU reader accepted index 1 from a two-member group, producing: KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] RIP: update_or_create_fnhe+0x45/0x15b0 Stop when the indexed path is absent. Groups are dense, so no later index exists in that snapshot. The same real-writer window completed 114,423 PMTU iterations without an oops with this check. A reproducer is available on request. Replacement requires CAP_NET_ADMIN in the network namespace. Where unprivileged user namespaces are permitted, a local user can obtain it in a new user and network namespace.

Affected products and packages

CNA (CVE.org)

VendorProductVersions
LinuxLinux
affected: 3bed2abab4a682d426624ce9add9d7b6d475d4e4 … < 7fd60d3c9a1e1b11ef5f1643bbae78d91eae2f4a
affected: 7f5005457b3072fe1ddf15bfef869f2a1d98e05e … < c60d17d6dd61adc761ac6f65a008fefbc54cbf87
affected: 7d3f3b4367f315a61fc615e3138f3d320da8c466 … < c6d670ac656badfd0e15355e07a13a6bdf3b69fd
affected: 7d3f3b4367f315a61fc615e3138f3d320da8c466 … < f27483f9975b5065ff67054cc7eb8edac6083488
affected: 7d3f3b4367f315a61fc615e3138f3d320da8c466 … < 6619e01855e65ef35723685a557e3eb106f4ecf5
affected: fc07a232326a623d0be482e307c08ea7049c2846
affected: b1f7bdee5750d6cbb9497140cd6582abc5fdcb9e
affected: 6.6.79 … < 6.6.160
affected: 6.12.16 … < 6.12.113
affected: 5.15.179 … < 5.16
affected: 6.1.129 … < 6.2
default: unaffected
LinuxLinux
affected: 6.13
unaffected: 0 … < 6.13
unaffected: 6.6.160 … <= 6.6.*
unaffected: 6.12.113 … <= 6.12.*
unaffected: 6.18.57 … <= 6.18.*
unaffected: 7.2.11 … <= 7.2.*
unaffected: 7.3 … <= *
default: affected

Open-source packages (GitHub Advisory / OSV)

ipv4: stop PMTU walk when nexthop group shrinks

EcosystemPackageAffected versionsFixed in
>= 3bed2abab4a682d426624ce9add9d7b6d475d4e4, < 7fd60d3c9a1e1b11ef5f1643bbae78d91eae2f4a; >= 7f5005457b3072fe1ddf15bfef869f2a1d98e05e, < c60d17d6dd61adc761ac6f65a008fefbc54cbf87; >= 7d3f3b4367f315a61fc615e3138f3d320da8c466, < c6d670ac656badfd0e15355e07a13a6bdf3b69fd; < f27483f9975b5065ff67054cc7eb8edac6083488; < 6619e01855e65ef35723685a557e3eb106f4ecf5; >= 6.6.79, < 6.6.160; >= 6.12.16, < 6.12.113; >= 5.15.179, < 5.16; >= 6.1.129, < 6.2; >= fc07a232326a623d0be482e307c08ea7049c2846; >= b1f7bdee5750d6cbb9497140cd6582abc5fdcb9e
v6.6.159, v6.6.158, v6.6.157, v6.6.156, v6.6.155, v6.6.154, v6.6.153, v6.6.152, v6.6.151, v6.6.150, v6.6.149, v6.6.148, v6.6.147, v6.6.146, v6.6.145, v6.6.144, v6.6.143, v6.6.142, v6.6.141, v6.6.140, … (+265)
7fd60d3c9a1e1b11ef5f1643bbae78d91eae2f4a, c60d17d6dd61adc761ac6f65a008fefbc54cbf87, c6d670ac656badfd0e15355e07a13a6bdf3b69fd, f27483f9975b5065ff67054cc7eb8edac6083488, 6619e01855e65ef35723685a557e3eb106f4ecf5, 6.6.160, 6.12.113, 5.16, 6.2
LinuxKernel< 6.6.160; >= 6.7.0, < 6.12.113; >= 6.13.0, < 6.18.57; < 7.2.116.6.160, 6.12.113, 6.18.57, 7.2.11

Linux distribution status

Red Hat ↗ Fetching

Debian ↗

ReleasePackageStatusFixed version / notes
bookwormlinuxopen not yet assigned
forkylinuxresolved not yet assigned7.2.11-1
sidlinuxresolved not yet assigned7.2.11-1
trixielinuxresolved not yet assigned6.12.113-1

Ubuntu ↗ Fetching

References (8)