CVE-2026-31531

EUVD-2026-25218
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
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
5.5 MEDIUM
LOCAL
LOW
LOW
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 1%
Affected Products (NVD)
VendorProductVersion
linuxlinux_kernel
5.3 ≤
𝑥
< 6.12.83
linuxlinux_kernel
6.13 ≤
𝑥
< 6.18.24
linuxlinux_kernel
6.19 ≤
𝑥
< 6.19.14
linuxlinux_kernel
7.0:rc1
linuxlinux_kernel
7.0:rc2
linuxlinux_kernel
7.0:rc3
linuxlinux_kernel
7.0:rc4
linuxlinux_kernel
7.0:rc5
linuxlinux_kernel
7.0:rc6
linuxlinux_kernel
7.0:rc7
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
linux
bookworm
vulnerable
bookworm (security)
vulnerable
bullseye
vulnerable
bullseye (security)
vulnerable
forky
7.0.10-1
fixed
sid
7.0.10-1
fixed
trixie
6.12.86-1
fixed
trixie (security)
6.12.90-2
fixed
Amazon Linux logo
Amazon Linux Releases
Amazon Package
Release
bpftool6.12
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
bpftool6.12-debuginfo
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
bpftool6.18
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
bpftool6.18-debuginfo
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel-livepatch-6.12.83-113.160
Amazon Linux 2023
1:1.0-0.amzn2023
fixed
kernel-livepatch-6.18.25-55.108
Amazon Linux 2023
1:1.0-0.amzn2023
fixed
kernel6.12
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-debuginfo
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-debuginfo-common-aarch64
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-debuginfo-common-x86_64
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-devel
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-headers
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-modules-extra
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-modules-extra-common
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-tools
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-tools-debuginfo
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.12-tools-devel
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
kernel6.18
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-debuginfo
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-debuginfo-common-aarch64
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-debuginfo-common-x86_64
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-devel
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-headers
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-modules-extra
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-modules-extra-common
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-tools
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-tools-debuginfo
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
kernel6.18-tools-devel
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
perf6.12
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
perf6.12-debuginfo
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
perf6.18
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
perf6.18-debuginfo
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
python3-perf6.12
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
python3-perf6.12-debuginfo
Amazon Linux 2023
1:6.12.83-113.160.amzn2023
fixed
python3-perf6.18
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed
python3-perf6.18-debuginfo
Amazon Linux 2023
1:6.18.25-55.108.amzn2023
fixed