Skip to main content

Linux Kernel veth CVE-2026-74742

| EUVDEUVD-2026-66572 HIGH
2026-08-26 Linux GHSA-pp8f-5mj5-qp78
7.5
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

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

  1. Access
    Generate high-volume traffic into veth pair
  2. Delivery
    Saturate ptr_ring on non-zero TX queue
  3. Exploit
    Queue halted via NETDEV_TX_BUSY
  4. Execution
    veth_poll wakes queue 0 instead of stalled queue
  5. Persist
    Stalled queue never recovered
  6. Impact
    Persistent network DoS on affected container

Vulnerability Assessment

Exploitation Conditions

Exploitation requires all of the following non-default conditions to be simultaneously true: (1) a multi-queue veth interface pair must be configured (num_queues > 1, non-default for most single-container deployments); (2) GRO/NAPI must be enabled on the veth interface (the default NAPI path, but explicitly distinguishable from the XDP path); (3) no XDP program must be attached to the veth device (attaching any XDP program, even a trivial pass-through, corrects the queue_index initialization and eliminates the bug); (4) the attacker must be able to generate sufficient traffic to fill the ptr_ring of a non-zero TX queue (NETDEV_TX_BUSY). Exploitation is further limited by the requirement that the veth pair be in use - idle interfaces with no traffic cannot trigger the stall. Single-queue veth configurations are entirely unaffected. Authentication requirements are not confirmed from the provided CVSS data alone given the network-vector context.

Impact

The provided CVSS vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, score 7.5) rates this as high severity with a network attack vector and no authentication required, which warrants scrutiny. The actual triggering mechanism involves a ptr_ring saturation event on a veth TX queue - achievable by flooding traffic through a veth pair - making AV:N defensible in containerized environments where veth is exposed to network ingress, but the effective blast radius is scoped to that specific veth pair rather than the broader host. The real-world risk is meaningful for container-heavy infrastructure: a stalled veth TX queue disrupts traffic for any workload relying on that interface, and the absence of ndo_tx_timeout means the stall is permanent until the interface is manually bounced or the kernel is restarted. EPSS data is absent from the provided intelligence; KEV status is not listed, meaning active exploitation is not confirmed by CISA. No CVE-specific exploit code is known, though the reporter has published reproduction scripts. The vulnerability requires a non-default multi-queue veth configuration with GRO enabled and no XDP program, narrowing the affected population. The CWE classification is absent from the data - the root cause maps most closely to CWE-908 (Use of Uninitialized Resource). Patch commits are available across stable trees, and fixed versions are identified, making this a straightforward patch-and-verify remediation for most operators.

Exploit ScenarioDerived

An attacker with the ability to inject high-volume traffic into a containerized workload's network namespace floods a multi-queue veth interface pair, saturating the ptr_ring on a non-zero TX queue and triggering NETDEV_TX_BUSY. Because veth_poll() wakes queue 0 instead of the stalled queue, all subsequent traffic on that queue is silently dropped indefinitely. The affected container loses network connectivity without generating kernel alerts or watchdog resets, enabling a persistent denial-of-service against the workload with no automatic recovery. Reproduction scripts are publicly available from the reporter at https://github.com/netoptimizer/veth-backpressure-performance-testing.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 27, 2026

Indefinite TX queue stall in the Linux kernel veth driver allows a denial-of-service condition against multi-queue virtual Ethernet interfaces running GRO without an XDP program attached. The root cause is that veth_poll() incorrectly uses rq->xdp_rxq.queue_index to determine which peer TX queue to wake - a field that is zero-initialized and only populated when XDP is active - causing all NAPI instances to wake peer TX queue 0 instead of the correct queue. In a multi-queue veth setup, a stopped TX queue (e.g., queue 1 halted due to ptr_ring saturation) is never woken, producing an indefinite transmit stall with no watchdog recovery because veth implements no ndo_tx_timeout. No public exploit is identified at time of analysis; reproduction scripts are publicly available from the reporter.

RemediationAI

The primary fix is to upgrade to a patched Linux kernel version: 6.12.105, 6.18.46, 7.1.10, or 7.2, per EUVD-2026-66572 and the upstream stable commits referenced at https://git.kernel.org/stable/c/b662a1fb4f3a5ea19bac24eea8315b1d05be51e7, https://git.kernel.org/stable/c/73f8dd22b1e533a99ecc3f9b5de6c6daccaecace, https://git.kernel.org/stable/c/90bb11fb29d3c55a2c46dc7c386d096b286e7fcf, and https://git.kernel.org/stable/c/60db47f02bfa2aa688938aa199117ec4f8e31d23. Where immediate kernel upgrade is not feasible, specific compensating controls include: restricting veth interfaces to single-queue mode (avoiding the multi-queue code path entirely, at the cost of reduced throughput on high-traffic container workloads); attaching a minimal pass-through XDP program to affected veth interfaces (this triggers xdp_rxq_info_reg() and correctly initializes queue_index, but introduces XDP processing overhead); or rate-limiting ingress on veth pairs to prevent ptr_ring saturation and thus avoid triggering the stall condition. Manual interface bounce (ip link set dev <veth> down && up) can recover a stalled queue without a reboot. None of these workarounds eliminate the underlying defect.

Affected VersionsENISA

Linux 6.12.61 <6.12.105
Linux 6.16
Linux patch: 0
Linux dc82a33297fc2c58cb0b2b008d728668d45c0f6a <90bb11fb29d3c55a2c46dc7c386d096b286e7fcf
Linux dc82a33297fc2c58cb0b2b008d728668d45c0f6a <60db47f02bfa2aa688938aa199117ec4f8e31d23
Linux patch: 6.18.46
Linux patch: 6.12.105
Linux 9fe31b3f314534e238aa6d0b6fb492134cbcf8be <b662a1fb4f3a5ea19bac24eea8315b1d05be51e7
Linux dc82a33297fc2c58cb0b2b008d728668d45c0f6a <73f8dd22b1e533a99ecc3f9b5de6c6daccaecace
Linux patch: 7.2
Linux patch: 7.1.10

Affected Packages

euvd linux fix: 6.12.105

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 veth driver creates paired virtual Ethernet devices, widely used to connect container network namespaces in environments such as Docker and Kubernetes. The vulnerable path is in veth_poll(), the NAPI poll handler. When XDP is attached, xdp_rxq_info_reg() initializes rq->xdp_rxq.queue_index to the correct per-queue index. On the GRO/NAPI path (veth_napi_enable_range()), this registration never occurs, so xdp_rxq.queue_index remains 0 for every queue due to zero-allocation of priv->rq. In a multi-queue configuration, the queue-wakeup logic in veth_poll() consistently targets the peer's TX queue 0 rather than the correct indexed queue. When veth_xmit() halts a non-zero queue (NETDEV_TX_BUSY due to ptr_ring full) and the corresponding RX-side NAPI handler wakes queue 0 instead of the stalled queue, that queue remains stopped with no recovery mechanism. veth has no ndo_tx_timeout implementation, so the kernel's netdev watchdog does not intervene. The fix derives the queue index from the RQ's position within priv->rq, which is correct regardless of XDP state. CPE: cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:*.

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

Vendor (Linux) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Network-reachable via container ingress traffic; no auth needed to flood a veth pair; impact is availability-only with no confidentiality or integrity dimension.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE HIGH
Red Hat 5.5 MEDIUM

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

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

Lifecycle Timeline

4
CVSS changed
Aug 27, 2026 - 06:22 NVD
7.5 (HIGH)
Patch available
Aug 26, 2026 - 16:17 EUVD
CVE Published
Aug 26, 2026 - 14:36 cve.org
UNKNOWN (no severity yet)
CVE Published
Aug 26, 2026 - 14:36 cve.org
HIGH 7.5

DescriptionCVE.org

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

veth: fix queue index used to wake the peer txq in veth_poll

veth_poll() derives the index of the peer TX queue to wake from rq->xdp_rxq.queue_index. That field is only initialized by xdp_rxq_info_reg() in veth_enable_xdp_range(), which runs only when an XDP program is attached. On the plain GRO/NAPI path (veth_napi_enable_range()) xdp_rxq_info_reg() is never called, so queue_index stays 0 for every queue, as priv->rq is zero-allocated.

So in a multi-queue setup with GRO enabled and no XDP program attached, every NAPI instance looks at the peer's TX queue 0. If veth_xmit() stops peer TX queue 1 because the ptr_ring is full (NETDEV_TX_BUSY), nothing ever wakes it again: the poller draining queue 1 wakes queue 0 instead. veth implements no ndo_tx_timeout, so the netdev watchdog does not kick in either, and the queue stays stopped indefinitely.

Derive the index from the position of the rq within priv->rq instead, which is correct regardless of whether XDP was ever enabled.

Scripts to reproduce the stall are available at https://github.com/netoptimizer/veth-backpressure-performance-testing

Executive ViewAI

Why It Matters

A kernel denial-of-service vulnerability in Linux's virtual Ethernet (veth) driver can cause indefinite network transmission stalls on containerized infrastructure, disrupting application connectivity. No public exploit identified at time of analysis. Organizations running Kubernetes, Docker, or similar container platforms on unpatched systems face risk of unexpected outages and should prioritize patching.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.5%
Top 62% exploitable
Prevalence
High
veth pairs are foundational to container networking in Docker and Kubernetes
Data Quality
3 sources
Confidence: Low

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 HIGH
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
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: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 16.0 Not-Affected

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