CVE-2026-23300CWE-476

CVE-2026-23300

Medium · published March 25, 2026

CVSS v3.1
5.5
EPSS
0%
Percentile
2.6
In the wild
Unconfirmed
What it is

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

net: ipv6: fix panic when IPv4 route references loopback IPv6 nexthop

When a standalone IPv6 nexthop object is created with a loopback device

(e.g., "ip -6 nexthop add id 100 dev lo"), fib6_nh_init() misclassifies

it as a reject route. This is because nexthop objects have no destination

prefix (fc_dst=::), causing fib6_is_reject() to match any loopback

nexthop. The reject path skips fib_nh_common_init(), leaving

nhc_pcpu_rth_output unallocated. If an IPv4 route later references this

nexthop, __mkroute_output() dereferences NULL nhc_pcpu_rth_output and

panics.

Simplify the check in fib6_nh_init() to only match explicit reject

routes (RTF_REJECT) instead of using fib6_is_reject(). The loopback

promotion heuristic in fib6_is_reject() is handled separately by

ip6_route_info_create_nh(). After this change, the three cases behave

as follows:

1. Explicit reject route ("ip -6 route add unreachable 2001:db8::/64"):

RTF_REJECT is set, enters reject path, skips fib_nh_common_init().

No behavior change.

2. Implicit loopback reject route ("ip -6 route add 2001:db8::/32 dev lo"):

RTF_REJECT is not set, takes normal path, fib_nh_common_init() is

called. ip6_route_info_create_nh() still promotes it to reject

afterward. nhc_pcpu_rth_output is allocated but unused, which is

harmless.

3. Standalone nexthop object ("ip -6 nexthop add id 100 dev lo"):

RTF_REJECT is not set, takes normal path, fib_nh_common_init() is

called. nhc_pcpu_rth_output is properly allocated, fixing the crash

when IPv4 routes reference this nexthop.

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00134 · 2.6th percentile
Weakness
CWE-476 · NULL Pointer Dereference
Published
2026-03-25T15:16Z
Affected products (9)
ProductVersionsFixed in
linux/linux_kernel≥ 5.3, < 5.10.2535.10.253
linux/linux_kernel≥ 5.11, < 5.15.2035.15.203
linux/linux_kernel≥ 5.16, < 6.1.1676.1.167
linux/linux_kernel≥ 6.2, < 6.6.1306.6.130
linux/linux_kernel≥ 6.7, < 6.12.776.12.77
linux/linux_kernel≥ 6.13, < 6.18.176.18.17
linux/linux_kernel≥ 6.19, < 6.19.76.19.7
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (12)
EPSS history
Timeline
  • 25 MAR 10:26Z
    net: ipv6: fix panic when IPv4 route references loopback IPv6 nexthop
    cvelistv5