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

Summary

CVECVE-2026-23300
StatePUBLISHED
AssignerLinux
Source PriorityCVE Program / NVD first with legacy fallback
Published2026-03-25 11:16:25 UTC
Updated2026-04-18 09:16:17 UTC
DescriptionIn 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.

Risk And Classification

EPSS: 0.000320000 probability, percentile 0.090980000 (date 2026-04-18)

Vendor Declared Affected Products

SourceVendorProductVersionPlatforms
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e 607e68c1b7c5a30c795571be1906d716e989a644 git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e c11d7c56c2076ee9cd72004f1976fe0734df2ae9 git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e b5062fc2150614c9ea8a611c2e0cb6e047ebfa3a git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e b299121e7453d23faddf464087dff513a495b4fc git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e f7c9f8e3607440fe39300efbaf46cf7b5eecb23f git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e b3b5a037d520afe3d5276e653bc0ff516bbda34c git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e 8650db85b4259d2885d2a80fbc2317ce24194133 git Not specified
CNA Linux Linux affected 493ced1ac47c48bb86d9d4e8e87df8592be85a0e 21ec92774d1536f71bdc90b0e3d052eff99cf093 git Not specified
CNA Linux Linux affected 5.3 Not specified
CNA Linux Linux unaffected 5.3 semver Not specified
CNA Linux Linux unaffected 5.10.253 5.10.* semver Not specified
CNA Linux Linux unaffected 5.15.203 5.15.* semver Not specified
CNA Linux Linux unaffected 6.1.167 6.1.* semver Not specified
CNA Linux Linux unaffected 6.6.130 6.6.* semver Not specified
CNA Linux Linux unaffected 6.12.77 6.12.* semver Not specified
CNA Linux Linux unaffected 6.18.17 6.18.* semver Not specified
CNA Linux Linux unaffected 6.19.7 6.19.* semver Not specified
CNA Linux Linux unaffected 7.0 * original_commit_for_fix Not specified

References

ReferenceSourceLinkTags
git.kernel.org/stable/c/c11d7c56c2076ee9cd72004f1976fe0734df2ae9 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/b5062fc2150614c9ea8a611c2e0cb6e047ebfa3a 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/b3b5a037d520afe3d5276e653bc0ff516bbda34c 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/b299121e7453d23faddf464087dff513a495b4fc 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/8650db85b4259d2885d2a80fbc2317ce24194133 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/f7c9f8e3607440fe39300efbaf46cf7b5eecb23f 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/607e68c1b7c5a30c795571be1906d716e989a644 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
git.kernel.org/stable/c/21ec92774d1536f71bdc90b0e3d052eff99cf093 416baaa9-dc9f-4396-8d5f-8c081fb06d67 git.kernel.org
CVE Program record CVE.ORG www.cve.org canonical
NVD vulnerability detail NVD nvd.nist.gov canonical, analysis
© CVE.report 2026 |

Use of this information constitutes acceptance for use in an AS IS condition. There are NO warranties, implied or otherwise, with regard to this information or its use. Any use of this information is at the user's risk. It is the responsibility of user to evaluate the accuracy, completeness or usefulness of any information, opinion, advice or other content. EACH USER WILL BE SOLELY RESPONSIBLE FOR ANY consequences of his or her direct or indirect use of this web site. ALL WARRANTIES OF ANY KIND ARE EXPRESSLY DISCLAIMED. This site will NOT BE LIABLE FOR ANY DIRECT, INDIRECT or any other kind of loss.

CVE, CWE, and OVAL are registred trademarks of The MITRE Corporation and the authoritative source of CVE content is MITRE's CVE web site. This site includes MITRE data granted under the following license.

Free CVE JSON API cve.report/api

CVE.report and Source URL Uptime Status status.cve.report