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: n/a
Action: n/a
AI Analysis

Impact

A use‑after‑free flaw in the Linux kernel networking scheduler API triggers when the classification routine returns TC_ACT_CONSUMED while a packet buffer remains owned by the defragmentation engine. The event handler incorrectly treats the buffer as still owned and returns it to the caller, leading to a use‑after‑free. This vulnerability is identified as CWE‑825 and can enable an attacker to corrupt kernel memory and potentially execute arbitrary code with elevated privileges.

Affected Systems

The vulnerability affects all Linux kernel installations that support the traffic control qdisc RED with connection tracking defragmentation enabled. It is present in kernels before the patch that handles TC_ACT_CONSUMED correctly, regardless of distribution or version; any system running the affected kernel should be considered at risk.

Risk and Exploitability

With a CVSS score of 9.8 the flaw is classified as critical. Although the EPSS score is below 1% and it is not currently listed in CISA’s KEV catalog, the combination of kernel privileges and a use‑after‑free attack path could allow local or remote attackers that can influence network traffic to execute code at kernel level. The attack likely requires sending crafted fragmented packets to a device that uses RED qdisc while connection tracking defrag is enabled; once triggered, the flaw causes a kernel crash or memory corruption.

Generated by OpenCVE AI on August 4, 2026 at 14:10 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that correctly handles TC_ACT_CONSUMED in tcf_qevent_handle, as referenced in the provided commit URLs.
  • Upgrade to the latest kernel release that contains the fix, for example Linux kernel 6.9 or newer.
  • If an update is not immediately possible, remove or replace the RED traffic control qdisc or disable connection tracking defragmentation on affected interfaces to eliminate the trigger path.

Generated by OpenCVE AI on August 4, 2026 at 14:10 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
History

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-08-05T12:42:39.900Z

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

Link: CVE-2026-64530

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

Modified: 2026-07-27T05:16:56.730

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-08-04T14:15:10Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference