CVE-2026-99282: net/sched: sch_teql: fix use-after-free on lower qdisc drop

Published Nov 7, 2026
·
Updated

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

net/sched: schteql: fix use-after-free on lower qdisc drop

The issue: teqlmasterxmit() tests the slave's ndostartxmit() return value against NETDEVTXOK alone. A slave that consumes the skb but returns an error code (rc < NETXMITMASK, e.g. NETXMITDROP) is treated as if the skb were still owned, so the loop restores skb->dev and calls skbpull() on it. A VLAN slave returns the result of devqueuexmit() from its ndostartxmit() (propagated since cbbef5e18307), and when the lower qdisc drops the packet that value is NETXMITDROP after the skb has been freed, giving a use-after-free in teqlmasterxmit().

The Fix: test for consumption with devxmitcomplete(), which accepts NETDEVTXOK and every rc < NETXMITMASK, matching other callers that need to distinguish consumed results from busy. Only NETDEVTXOK keeps the packet counted in txpackets/txbytes and advances the slave; a consumed result that is neither a success nor NETXMITCN ends the attempt and is charged to txdropped, so lower-qdisc drops are no longer reported as good transmits. NETXMITCN is counted like success because it can accompany acceptance of the current packet: pfifoheaddrop drops the old head, enqueues the current skb and returns NETXMITCN.

Conditions to recreate the bug: With CONFIGNETSCHTEQL, CONFIGVLAN8021Q and CONFIGDUMMY enabled, add lkrdummy0 (dummy) and lkrvlan0 (VLAN id 37 on lkrdummy0); set a pfifo limit 0 root on lkrdummy0 and a teql0 root on lkrvlan0; bring teql0 up with an address and send one UDP packet to it. The VLAN xmit returns NETXMITDROP from the lower qdisc while holding a freed skb.

Event History

Nov 7, 2026
CVE Published
via MITRE·02:08 PM
Data Sourced
via MITRE·02:08 PM
Description
Data Sourced
via NVD·02:17 PM
Description

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203