CVE-2026-23074
Linux Kernel vulnerability analysis and mitigation

Overview

CVE-2026-23074 is a use-after-free (UAF) vulnerability in the Linux kernel's traffic control (tc/qdisc) subsystem, specifically in the teql (True Link Equalizer) qdisc implementation. The flaw arises because teql lacks enforcement that it must only be used as a root qdisc; when misconfigured as a child qdisc under a parent such as QFQ, incorrect queue length (qlen) tracking leads to dangling pointer dereferences. It affects Linux kernel versions from 2.6.12 through 5.10.248, 5.11 through 5.15.198, 5.16 through 6.1.161, 6.2 through 6.6.121, 6.7 through 6.12.67, and 6.13 through 6.18.7. The vulnerability was published on February 4, 2026, with patches released on March 18, 2026. It carries a CVSS v3.1 base score of 7.8 (High) (Feedly, kernel.org patches).

Technical details

The root cause is classified as CWE-416 (Use After Free). The teql qdisc is designed to operate only as a root qdisc, but no enforcement of this constraint existed. When teql is nested as a child under a parent qdisc (e.g., QFQ), it only updates the parent's visible queue length (sch->q.qlen) during dequeue operations. Because teql's peek() always returns NULL, the parent qdisc never calls dequeue(), so qlen is never incremented. When the parent subsequently attempts class parameter updates (e.g., qfq_change_class calling qfq_deact_rm_from_agg), it fails to properly deactivate the class due to the stale qlen value of 0, but still frees aggregate pointers — creating a use-after-free condition when a deferred packet (e.g., after netem delay) is later processed. The fix enforces that teql can only be attached as a root qdisc (Feedly, kernel.org patches). The attack vector is local, requires low privileges, and no user interaction.

Impact

Successful exploitation can result in kernel panic (denial of service) or potentially arbitrary code execution in kernel context, depending on how the freed memory is subsequently reused. An attacker with local access and low privileges can trigger the UAF condition by crafting a specific qdisc hierarchy involving teql as a child qdisc with carefully timed packet flows. The confidentiality, integrity, and availability impacts are all rated High, making this a significant local privilege escalation and DoS vector on affected Linux systems (Feedly).

Exploitation steps

  1. Gain local access: Obtain a low-privilege shell on a target system running a vulnerable Linux kernel version (e.g., 5.10.x < 5.10.249, 5.15.x < 5.15.199, 6.1.x < 6.1.162, 6.6.x < 6.6.122, 6.12.x < 6.12.68, or 6.13.x < 6.18.8).
  2. Verify tc permissions: Confirm that the user has permission to configure traffic control qdiscs (e.g., via CAP_NET_ADMIN or equivalent in a user namespace).
  3. Create the malicious qdisc hierarchy: Use tc commands to set up a root QFQ qdisc with two classes — one class using netem with a significant delay (e.g., 6.4 seconds) and another class using teql as a child qdisc.
    tc qdisc add dev eth0 root handle 1: qfq
    tc class add dev eth0 parent 1: classid 1:1 qfq weight 15 maxpkt 16384
    tc class add dev eth0 parent 1: classid 1:2 qfq weight 1 maxpkt 1514
    tc qdisc add dev eth0 parent 1:1 netem delay 6400ms
    tc qdisc add dev eth0 parent 1:2 teql0
  4. Trigger the race condition: Send a packet that is enqueued to class 1:1 (netem), then send a second packet to class 1:2 (teql). The teql enqueue succeeds and activates class 1:2, but qlen is never incremented.
  5. Trigger the UAF: While the first packet is pending in netem, modify class 1:2's lmax parameter using tc class change. This causes qfq_change_class to call qfq_deact_rm_from_agg, which frees aggregate pointers without properly deactivating the class due to the stale qlen=0.
  6. Achieve kernel panic or code execution: When the netem-delayed packet is rescheduled after 6.4 seconds, the kernel accesses the now-freed (dangling) pointer, triggering a use-after-free that can result in a kernel panic or, under controlled memory conditions, arbitrary kernel code execution (Feedly).

Indicators of compromise

  • Logs: Kernel oops or panic messages in /var/log/kern.log or dmesg referencing net/sched/sch_teql.c or QFQ-related functions such as qfq_deact_rm_from_agg or qfq_change_class; kernel BUG traces involving use-after-free in the net/sched subsystem.
  • Process/System Behavior: Unexpected system crashes or kernel panics on systems with traffic control configurations; sudden loss of network connectivity on affected interfaces following tc qdisc configuration changes.
  • Network: Unusual tc (traffic control) commands executed by non-root users, particularly those creating teql qdiscs as child qdiscs under QFQ or similar parent qdiscs; audit logs (auditd) showing CAP_NET_ADMIN usage by low-privilege accounts.
  • File System: Audit trails showing execution of tc qdisc add ... teql with a non-root parent handle by unprivileged users.

Mitigation and workarounds

Apply the latest kernel security updates for your Linux distribution as soon as possible. Fixed upstream kernel versions include: 5.10.249+, 5.15.199+, 6.1.162+, 6.6.122+, 6.12.68+, and 6.18.8+ (kernel.org patches). Distribution-specific patches have been released by Red Hat (RHSA-2026:3083, RHSA-2026:3110, RHSA-2026:3268, RHSA-2026:3277, and others), Ubuntu (USN-8145-1, USN-8148-1, USN-8159-1, USN-8188-1, USN-8200-2, USN-8224-1, USN-8267-1, and others), SUSE, AlmaLinux, Oracle Linux, and Amazon Linux (Red Hat, Ubuntu). As a workaround where immediate patching is not possible, restrict the ability of non-root users to configure traffic control qdiscs by limiting CAP_NET_ADMIN capabilities and disabling user namespaces if not required (sysctl -w kernel.unprivileged_userns_clone=0 on supported distributions).

Community reactions

The vulnerability has received broad coverage from Linux distribution security teams, with patch advisories issued by Red Hat, Ubuntu, SUSE, AlmaLinux, Oracle Linux, and Amazon Linux. Juniper Networks also addressed this CVE in their Juniper Secure Analytics product (JSA 7.5.0 UP15 IF01). No notable independent researcher commentary or significant social media discussion has been identified beyond standard distribution security announcements (Red Hat, Ubuntu, Juniper).

Additional resources


SourceThis report was generated using AI

Related Linux Kernel vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-64557NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-rt-selftests-internal
NoNoJul 29, 2026
CVE-2026-64556NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-64k-devel
NoNoJul 29, 2026
CVE-2026-64555NONEN/A
  • Linux Kernel logoLinux Kernel
  • linux-azure-fde-6.14
NoNoJul 27, 2026
CVE-2026-64554NONEN/A
  • Linux Kernel logoLinux Kernel
  • linux-gcp-6.14
NoYesJul 27, 2026
CVE-2026-64553NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-rt-64k-debug-modules-internal
NoYesJul 27, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management