Skip to main content

Linux Kernel CVE-2026-31531

| EUVDEUVD-2026-25218 MEDIUM
2026-04-23 Linux GHSA-8q42-qfhf-592h
5.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Local user account created
  2. Delivery
    RTM_GETNEXTHOP netlink message crafted
  3. Exploit
    Large ECMP nexthop group queried
  4. Execution
    Fixed-size buffer overflow triggered
  5. Persist
    Kernel warning/panic generated
  6. Impact
    Service denial achieved

Vulnerability Assessment

Exploitation Conditions

The vulnerability requires: (1) local system access (network-based exploitation is not possible), (2) unprivileged user credentials (PR:L - low privilege sufficient), (3) a nexthop object configured with a large Equal-Cost Multi-Path group exceeding approximately 512 member nexthops (this is the critical trigger condition), and (4) capability to send RTM_GETNEXTHOP netlink messages, which standard users can perform. The vulnerability does NOT require root access, special kernel modules, or kernel configuration changes beyond standard ECMP routing setup. Systems using small nexthop groups (<512 members) or not using nexthop objects at all are not affected. The attack is reliable and reproducible once a large nexthop group exists; iproute2 tools cannot currently trigger this via normal commands due to built-in size limits, but the kernel API itself is vulnerable to direct netlink calls.

Impact

This is a low-to-moderate real-world risk despite the 5.5 CVSS score. The CVSS vector (AV:L/AC:L/PR:L/UI:N/S:U) correctly indicates local-only attack surface requiring low-privilege user access, eliminating remote attack risk entirely. The extremely low EPSS score (0.02%, percentile 5%) reflects minimal exploitation probability, suggesting this is a niche impact affecting only systems managing large ECMP nexthop groups. No public exploit code exists, and no active exploitation is reported. However, the vulnerability is real for environments using advanced routing with large nexthop groups (>512 members), where local authenticated users can reliably trigger denial of service. The impact is availability-only (A:H) with no confidentiality or integrity compromise. Organizations should prioritize this based on whether they deploy ECMP routing with large group sizes and their tolerance for local DoS from untrusted users. The CVSS and EPSS signals align: high individual impact but low operational likelihood.

Exploit ScenarioDerived

A local authenticated user with unprivileged credentials (e.g., a system service or user account) sends an RTM_GETNEXTHOP netlink message querying a nexthop group containing more than approximately 512 members. The kernel's fixed-size socket buffer (NLMSG_GOODSIZE) overflows during serialization of the large group data, triggering a kernel warning and potentially causing a kernel panic or system hang depending on kernel configuration and memory pressure, resulting in denial of service.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 28, 2026

Denial of service in Linux kernel nexthop query handling allows local authenticated attackers to crash the kernel by querying nexthop objects with large Equal-Cost Multi-Path groups via the RTM_GETNEXTHOP netlink message. The vulnerability stems from fixed-size socket buffer allocation that overflows when processing nexthop groups exceeding approximately 512 members, triggering a kernel warning and potential system instability.

RemediationAI

Apply the vendor-released patch from your Linux distribution or build the kernel from upstream commits 615517f3f8d53b0cf41507c7599971e17adfdfa5 or later. Specific patched kernel versions include 6.12.83, 6.19.14, 6.18.24, and 7.0. Verify the fix via git log or your distribution's security advisory. As a temporary compensating control, restrict access to netlink RTM_GETNEXTHOP message handling via user/group permissions or seccomp/AppArmor rules to prevent local users from sending nexthop queries; however, this may break legitimate routing management tools and is not recommended as a long-term mitigation. The kernel patch is strongly preferred as it has no functional side effects - it simply improves buffer allocation from fixed to dynamic sizing. Distributions should prioritize backporting the upstream commits to stable branches used by their customer base.

Affected VersionsENISA

Linux 5.3
Linux patch: 6.12.83
Linux 430a049190de3c9e219f43084de9f1122da04570 <635038fe19db391117e66b46bdc2b6e447ac801d
Linux 430a049190de3c9e219f43084de9f1122da04570 <14cf0cd35361f4e94824bf8a42f72713d7702a73
Linux patch: 6.19.14
Linux patch: 0
Linux patch: 6.18.24
Linux patch: 7.0
Linux 430a049190de3c9e219f43084de9f1122da04570 <615517f3f8d53b0cf41507c7599971e17adfdfa5
Linux 430a049190de3c9e219f43084de9f1122da04570 <40bd39e383a0478fd5c221f393df05fd9d70cfbc

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability exists in the IPv4 nexthop module (net/ipv4/nexthop.c) within the rtm_get_nexthop() function, which handles RTM_GETNEXTHOP netlink messages. The code allocated socket buffers using the fixed NLMSG_GOODSIZE constant, inadequate for large nexthop groups used in Equal-Cost Multi-Path (ECMP) routing configurations. The root cause is improper buffer sizing logic that fails to account for variable-length nexthop group data structures. The fix involves replacing fixed allocation with dynamic sizing via nh_nlmsg_size() and nlmsg_new() functions, consistent with the nexthop_notify() code path. Additionally, nh_nlmsg_size_grp() was modified to calculate sizes based on passed flags and include missing NHA_FDB attributes in group size calculations.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
SUSE MEDIUM
Red Hat 5.5 MEDIUM

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

4
CVSS changed
Apr 28, 2026 - 17:52 NVD
5.5 (MEDIUM)
Patch released
Apr 28, 2026 - 17:38 nvd
Patch available
Patch available
Apr 23, 2026 - 13:16 EUVD
CVE Published
Apr 23, 2026 - 11:12 nvd
MEDIUM 5.5

DescriptionNVD

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

ipv4: nexthop: allocate skb dynamically in rtm_get_nexthop()

When querying a nexthop object via RTM_GETNEXTHOP, the kernel currently allocates a fixed-size skb using NLMSG_GOODSIZE. While sufficient for single nexthops and small Equal-Cost Multi-Path groups, this fixed allocation fails for large nexthop groups like 512 nexthops.

This results in the following warning splat:

WARNING: net/ipv4/nexthop.c:3395 at rtm_get_nexthop+0x176/0x1c0, CPU#20: rep/4608 [...] RIP: 0010:rtm_get_nexthop (net/ipv4/nexthop.c:3395) [...] Call Trace: <TASK> rtnetlink_rcv_msg (net/core/rtnetlink.c:6989) netlink_rcv_skb (net/netlink/af_netlink.c:2550) netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344) netlink_sendmsg (net/netlink/af_netlink.c:1894) ____sys_sendmsg (net/socket.c:721 net/socket.c:736 net/socket.c:2585) ___sys_sendmsg (net/socket.c:2641) __sys_sendmsg (net/socket.c:2671) do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) </TASK>

Fix this by allocating the size dynamically using nh_nlmsg_size() and using nlmsg_new(), this is consistent with nexthop_notify() behavior. In addition, adjust nh_nlmsg_size_grp() so it calculates the size needed based on flags passed. While at it, also add the size of NHA_FDB for nexthop group size calculation as it was missing too.

This cannot be reproduced via iproute2 as the group size is currently limited and the command fails as follows:

addattr_l ERROR: message exceeded bound of 1048

Threat Intelligence Overview

EPSS Score
0.0%
Top 95% exploitable
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Medium
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy