CVE-2026-23359

bpf: Fix stack-out-of-bounds write in devmap

State
Published
Severity
Not scored
Published
Mar 25, 2026
Updated
Oct 15, 2026
Reserved
Jan 13, 2026

Read the record on cve.org

Description

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

bpf: Fix stack-out-of-bounds write in devmap

get_upper_ifindexes() iterates over all upper devices and writes their indices into an array without checking bounds.

Also the callers assume that the max number of upper devices is MAX_NEST_DEV and allocate excluded_devices[1+MAX_NEST_DEV] on the stack, but that assumption is not correct and the number of upper devices could be larger than MAX_NEST_DEV (e.g., many macvlans), causing a stack-out-of-bounds write.

Add a max parameter to get_upper_ifindexes() to avoid the issue. When there are too many upper devices, return -EOVERFLOW and abort the redirect.

To reproduce, create more than MAX_NEST_DEV(8) macvlans on a device with an XDP program attached using BPF_F_BROADCAST | BPF_F_EXCLUDE_INGRESS. Then send a packet to the device to trigger the XDP redirect path.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before 88df604f0d16a692867582350ce3f2fcd22243f1Affected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before 5000e40acc8d0c36ab709662e32120986ac22e7eAffected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before 8a95fb9df1105b1618872c2846a6c01e3ba20b45Affected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before d2c31d8e03d05edc16656e5ffe187f0d1da763d7Affected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before 75d474702b2ba8b6bcb26eb3004dbc5e95ffd5d2Affected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before ca831567908fd3f73cf97d8a6c09a5054697a182Affected
  • aeea1b86f9363f3feabb496534d886f082a89f21 to before b7bf516c3ecd9a2aae2dc2635178ab87b734fef1Affected
LinuxLinux
  • 5.15Affected
  • before 5.15Not affected
  • 5.15.203 through 5.15.*Not affected
  • 6.1.167 through 6.1.*Not affected
  • 6.6.130 through 6.6.*Not affected
  • 6.12.77 through 6.12.*Not affected
  • 6.18.17 through 6.18.*Not affected
  • 6.19.7 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.