data built 2026-10-19T13:16:53Z

Look up another CVE · open CVE-2026-74317 in the interactive tracker

CVE-2026-74317

ixgbe: do not configure xps for XDP queues

7.8 EPSS 0.1% AV:L

Published 2026-08-15 (2 months ago) by the Linux kernel CNA. Subsystem drivers/net. Debian urgency: not yet assigned.

What to do, per Debian release

Debian's own status for CVE-2026-74317 in every release this site tracks, and what each one means in practice. Every status below is the one the Debian Security Team publishes for this CVE. source

ReleaseStatus VersionWhat this means
Debian 12bookwormvulnerable6.1.190-1No fix published anywhere yet, neither in Debian nor upstream for the series bookworm tracks. Watch the Debian tracker page for this CVE. Advisories for bookworm have historically landed a median of 23 days after publication.
Debian 13trixievulnerable6.12.113-1No fix published anywhere yet, neither in Debian nor upstream for the series trixie tracks. Watch the Debian tracker page for this CVE. Advisories for trixie have historically landed a median of 11 days after publication.
Debian 14forkyfixed7.1.5-1Update the kernel and reboot. Fixed in 7.1.5-1. A running kernel keeps the old code until the machine restarts.
Debian unstablesidfixed7.1.5-1Update the kernel and reboot. Fixed in 7.1.5-1. A running kernel keeps the old code until the machine restarts.

The vulnerability

What the bug is

netif_set_xps_queue() should not be called for an XDP Tx queue, since such queues are not netdev-exposed. On systems with number of CPUs >=64, on E610 adapter, netdev is configured with maximum number queue pairs being 63 (due to MSI-X assignment), but configuring XDP results in 64 XDP queues. So, during XDP program load, when netif_set_xps_queue() is called for the last XDP queue, we get a WARNING with a call trace and KASAN report afterwards (if enabled). [ 2012.699800] WARNING: net/core/dev.c:2854 at __netif_set_xps_queue+0x116a/0x1e40, CPU#36: xdpsock/103668 [...] [ 2012.700029] RIP: 0010:__netif_set_xps_queue+0x116a/0x1e40 [ 2012.700035] Code: b6 34 06 48 89 f8 83 e0 07 83 c0 01 40 38 f0 7c 09 40 84 f6 0f 85 03 0a 00 00 0f b7 44 24 40 66 43 89 44 6a 18 e9 01 fb ff ff <0f> 0b e9 f2 ee ff ff 44 8b 44 24 44 45 85 c0 74 50 4d 85 e4 0f 84 [ 2012.700040] RSP: 0018:ffff8882369aeb28 EFLAGS: 00010246 [ 2012.700046] RAX: 0000000000000000 RBX: 000000000000003f RCX: 0000000000000000 [ 2012.700050] RDX: 1ffff1111da3d891 RSI: ffff888120e34250 RDI: ffff8888ed1ec488 [ 2012.700054] RBP: ffff888913281560 R08: 0000000000000000 R09: ffff8888ed1ec000 [ 2012.700058] R10: ffff8888a2e83180 R11: 0000000000000000 R12: 0000000000007fa8 [ 2012.700061] R13: 000000000000003f R14: ffff888120e34854 R15: ffff8889132817c8 [ 2012.700065] FS: 00007fc8ea9ff740(0000) GS:ffff88884cefe000(0000) knlGS:0000000000000000 [ 2012.700069] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 2012.700073] CR2: 00007f81c8000020 CR3: 00000002299f8006 CR4: 00000000007726f0 [ 2012.700077] PKRU: 55555554 [ 2012.700080] Call Trace: [ 2012.700084] <TASK> [ 2012.700087] ? ktime_get+0x61/0x150 [ 2012.700097] ? usleep_range_state+0x133/0x1b0 [ 2012.700108] ? __pfx_usleep_range_state+0x10/0x10 [ 2012.700114] netif_set_xps_queue+0x31/0x50 [ 2012.700119] ixgbe_configure_tx_ring+0x472/0x920 [ixgbe] [...] [ 2012.700486] ixgbe_xdp+0x38f/0x750 [ixgbe] [...] [ 2012.701094] BUG: KASAN: slab-out-of-bounds in __netif_set_xps_queue+0x1ac5/0x1e40 [ 2012.701100] Write of size 4 at addr ffff88888d43cff8 by task xdpsock/103668 Skip XPS configuration for XDP Tx queues.

Where it lives

The fix touches these files. If the subsystem is one you do not use, the practical exposure is lower, though the package is still the vulnerable one.

drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

What this is
INTEL ETHERNET DRIVERSMAINTAINERS section matched on drivers/net/ethernet/intel/*/ · intel-wired-lan@lists.osuosl.org · Maintained
Kernel module
ixgbe

Check it on the machine

grep -wE 'CONFIG_ETHERNET|CONFIG_IXGBE|CONFIG_NET_VENDOR_INTEL' /boot/config-$(uname -r)

Reads the booted kernel's own configuration, on the machine and nowhere else. =y is built in, =m is a module, and an is not set line means the code is not there.

lsmod | grep -w ixgbe

Prints a line if that module is loaded right now, and nothing if it is not. One that is not loaded can still be loaded later by anything that needs it.

Show whether Debian builds this, per release

Debian builds this, but not on every flavour. At least one release below builds the code on some of its kernel flavours and not on others, so the answer depends on the architecture and flavour installed.

  • bookwormMnot built on amd64/cloud-amd64, arm64/cloud-arm64
  • trixieMnot built on amd64/cloud-amd64, arm64/cloud-arm64, armel/rpi
  • forky, sidMnot built on amd64/cloud-amd64, arm64/cloud-arm64
M
a module where it is built at all; some flavours do not build it
Build switches
CONFIG_ETHERNET, CONFIG_IXGBE, CONFIG_NET_VENDOR_INTEL
Reads as
all on means the file is compiled; any one off means it is not.

From the configuration Debian publishes for every kernel flavour it builds. It covers only the architectures Debian ships a linux-config package for, and nothing about a kernel you built yourself. Debian's own status above stays authoritative about the source package.MAINTAINERS kbuild Makefiles Debian linux-config packages

Signals

Published
2026-08-15 (2 months ago)source
CVSS
7.8 high
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:Hsource recompute it
Attack vector
local (AV:L)source
EPSS
0.13%, higher than 2.1% of all CVEssource
CISA KEV
not listedthe KEV catalogue
Debian urgency
not yet assignedsource
Subsystem
drivers/net

Upstream fixes

The versions the CNA records as introducing and fixing this, and the commit for each. source

IntroducedFixed inCommit
4.126.18.57f488b83a3810
4.127.1.5a2a224f5e344
4.127.27bd4355272de

Why the CNA scored it this way

Quoted from the kernel CNA's own scoring file, word for word. A highlighted metric carries the most severe value CVSS v3.1 defines for it, which is what pushes the score up. source

AV:LAttack vector, local
The bug is reached only via local kernel interfaces (bpf syscall/RTNETLINK IFLA_XDP_FD or AF_XDP setup) that attach an XDP program to an ixgbe netdev, calling ixgbe_xdp_setup() -> ixgbe_configure_tx_ring() -> netif_set_xps_queue(); it is not triggered by remote network packets.
AC:LAttack complexity, low
On ixgbe with 64+ CPUs, loading any XDP program deterministically configures all XDP Tx rings including queue_index 63 while netdev->num_tx_queues stays 63, reliably triggering the out-of-bounds write in __netif_set_xps_queue() without races or attacker-uncontrollable timing.
PR:LPrivileges required, low
Reaching ixgbe_xdp()/ndo_bpf requires CAP_NET_ADMIN to load/attach BPF_PROG_TYPE_XDP via bpf() or rtnl_setlink; per kernel CNA guidance CAP_NET_ADMIN is scored as Low because it is obtainable by unprivileged users inside a user/network namespace (unshare -Urn).
UI:NUser interaction, none
Exploitation requires only the attacker to load an XDP program on the ixgbe interface; no victim user action such as opening files, clicking links, or mounting filesystems is needed.
S:UScope, unchanged
The out-of-bounds write corrupts kernel netdev/XPS metadata in the same kernel security domain as the attacker; it does not cross VM, container, or IOMMU boundaries to impact a separate authority.
C:HConfidentiality impact, high
KASAN reports a slab out-of-bounds 4-byte write in __netif_set_xps_queue() via netdev_get_tx_queue(dev, index) when index equals num_tx_queues; kernel heap corruption can be leveraged for further memory disclosure even though the immediate fault is a write.
I:HIntegrity impact, high
The vulnerability is an out-of-bounds write past the netdev->_tx[] array (writing netdev_queue->numa_node), constituting kernel memory corruption that can potentially be developed into arbitrary write or control-flow hijack primitives.
A:HAvailability impact, high
Triggering the bug emits a kernel WARNING and KASAN slab-out-of-bounds report during XDP program load; the corrupting write can panic/oops the system or destabilize the ixgbe driver on production kernels without KASAN.