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

net/sched: cls_api: Handle TC_ACT_CONSUMED in tcf_qevent_handle

tcf_classify() can return TC_ACT_CONSUMED while the skb is held by the
defragmentation engine (e.g. act_ct on out-of-order fragments). When
that happens the skb is no longer owned by the caller and must not be
touched again.

tcf_qevent_handle() did not handle TC_ACT_CONSUMED: it fell through the
switch and returned the skb to the caller as if classification had
passed. The only qdisc that wires up qevents today is RED, via three call sites
(qe_mark on RED_PROB_MARK/HARD_MARK, qe_early_drop on congestion_drop)
red_enqueue() was continuing to operate on an skb it no longer owns in this
case -- enqueueing it, dropping it, or updating statistics. Resulting in a UAF.

tc qdisc add dev eth0 root handle 1: red ... qevent early_drop block 10
tc filter add block 10 ... action ct

(with ct defrag enabled and traffic that produces out-of-order
fragments, e.g. a fragmented UDP stream)

Handle TC_ACT_CONSUMED in tcf_qevent_handle() the same way the ingress
and egress fast paths do: treat it as stolen and return NULL without
touching the skb. Unlike the TC_ACT_STOLEN case, the skb must not be
dropped/freed here, as it is no longer owned by us.
Published: 2026-07-26
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Patch
AI Analysis

Impact

In the Linux kernel, the classification routine can return TC_ACT_CONSUMED while the socket buffer is still under the defragmentation engine's control. The tcf_qevent_handle function does not treat this return value specially and passes the buffer back to the caller as if the packet had been processed normally. Because the buffer is no longer owned by the caller, this produces a use‑after‑free condition that can corrupt kernel memory. The flaw is cataloged as CWE‑416 and CWE‑825.

Affected Systems

All Linux kernel deployments that enable the RED traffic control qdisc with connection‑tracking defragmentation on any network interface are affected. The vulnerability applies to every kernel version released before the patch that adds proper handling for TC_ACT_CONSUMED; no specific version range is provided in the CVE record.

Risk and Exploitability

The flaw carries a CVSS score of 9.8, placing it in the critical range, while its EPSS score is below 1% and it is not listed in the CISA KEV catalog. The likely attack vector requires an attacker to deliver crafted fragmented traffic over a network interface configured with RED qdisc and CT defrag, which may be achievable remotely from any host that can send packets to the target. If triggered, the use‑after‑free can lead to kernel memory corruption, potentially allowing an attacker to execute arbitrary code with kernel privileges.

Generated by OpenCVE AI on October 20, 2026 at 14:18 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the Linux kernel patch that adds handling for TC_ACT_CONSUMED in tcf_qevent_handle.
  • Upgrade to a kernel version that includes the fix, ensuring the change referenced in the commit history (e.g., commit 2140c2f3f2e7...) is present.
  • If a kernel upgrade is not immediately possible, remove or disable the RED traffic control qdisc on the affected interface or turn off connection‑tracking defragmentation to eliminate the trigger path.

Generated by OpenCVE AI on October 20, 2026 at 14:18 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4720-1 linux security update
Debian DLA Debian DLA DLA-4723-1 linux-6.1 security update
Debian DLA Debian DLA DLA-4724-1 linux-6.12 new package
Debian DSA Debian DSA DSA-6405-1 linux security update
Ubuntu USN Ubuntu USN USN-8781-1 Linux kernel (NVIDIA Tegra) vulnerabilities
Ubuntu USN Ubuntu USN USN-8816-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8816-2 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8816-3 Linux kernel (Oracle) vulnerabilities
Ubuntu USN Ubuntu USN USN-8816-4 Linux kernel (GKE) vulnerabilities
Ubuntu USN Ubuntu USN USN-8876-1 Linux kernel (Azure CVM) vulnerabilities
Ubuntu USN Ubuntu USN USN-8875-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8877-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8878-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8879-1 Linux kernel (Oracle) vulnerabilities
Ubuntu USN Ubuntu USN USN-8888-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8888-2 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8875-2 Linux kernel (NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-8917-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8918-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-9003-1 Linux kernel (NVIDIA) vulnerabilities
History

Mon, 19 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 16 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 28 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 27 Jul 2026 05:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Sun, 26 Jul 2026 07:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net/sched: cls_api: Handle TC_ACT_CONSUMED in tcf_qevent_handle tcf_classify() can return TC_ACT_CONSUMED while the skb is held by the defragmentation engine (e.g. act_ct on out-of-order fragments). When that happens the skb is no longer owned by the caller and must not be touched again. tcf_qevent_handle() did not handle TC_ACT_CONSUMED: it fell through the switch and returned the skb to the caller as if classification had passed. The only qdisc that wires up qevents today is RED, via three call sites (qe_mark on RED_PROB_MARK/HARD_MARK, qe_early_drop on congestion_drop) red_enqueue() was continuing to operate on an skb it no longer owns in this case -- enqueueing it, dropping it, or updating statistics. Resulting in a UAF. tc qdisc add dev eth0 root handle 1: red ... qevent early_drop block 10 tc filter add block 10 ... action ct (with ct defrag enabled and traffic that produces out-of-order fragments, e.g. a fragmented UDP stream) Handle TC_ACT_CONSUMED in tcf_qevent_handle() the same way the ingress and egress fast paths do: treat it as stolen and return NULL without touching the skb. Unlike the TC_ACT_STOLEN case, the skb must not be dropped/freed here, as it is no longer owned by us.
Title net/sched: cls_api: Handle TC_ACT_CONSUMED in tcf_qevent_handle
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-19T20:48:38.296Z

Reserved: 2026-07-19T15:36:31.794Z

Link: CVE-2026-64530

cve-icon Vulnrichment

Updated: 2026-10-16T15:41:44.913Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-07-26T07:16:41.680

Modified: 2026-11-03T18:15:39.353

Link: CVE-2026-64530

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-26T00:00:00Z

Links: CVE-2026-64530 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-20T14:30:14Z

Weaknesses