Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: net/sched: sch_taprio: Replace direct dequeue call with peek and qdisc_dequeue_peeked When taprio's software path peeks a non-work-conserving child qdisc, the child stashes the peeked skb in its gso_skb; taprio_dequeue_from_txq() then takes the packet with a direct child ->dequeue() call, which ignores that stash, orphans the peeked skb and desyncs the child's qlen/backlog. With a qfq child this re-enters the child on an emptied list and dereferences NULL, panicking the kernel from softirq on ordinary egress. Take the packet through qdisc_dequeue_peeked(), as sch_red and sch_sfb now do. The helper returns the child's stashed skb first and is a no-op when there is none, so a work-conserving child is unaffected and the gated path now consumes the skb whose length was charged to the budget.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before 51f8af240aed903e988755af33d7491030b50ae9; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before 17ab5f76f3899f67e5569722f334591f4b88b17b; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before f60d5c12e0551012cee5c272b0bcbcc78f7bb506; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before 6ee5a7665a9080bcb05d703bf981a579436fd05e; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before 18d580cb00c55805633bae45e90cf22ed6b8e424; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before e2b7ee61989f2d39df6c2cc06f9db1aea69bdb09; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before 2dcebbd1ad2e180fe7b98bf346ced69a872e11e6; affected 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22 before e056e1dfcddca877dd46d704e8ec9860cfc9ec44 |
| Linux / Linux | affected 4.20; unaffected 0 before 4.20; unaffected 5.10.266 through 5.10.*; unaffected 5.15.217 through 5.15.*; unaffected 6.1.184 through 6.1.*; unaffected 6.6.145 through 6.6.*; unaffected 6.12.97 through 6.12.*; unaffected 6.18.40 through 6.18.*; unaffected 7.1.5 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/51f8af240aed903e988755af33d7491030b50ae9
- https://git.kernel.org/stable/c/17ab5f76f3899f67e5569722f334591f4b88b17b
- https://git.kernel.org/stable/c/f60d5c12e0551012cee5c272b0bcbcc78f7bb506
- https://git.kernel.org/stable/c/6ee5a7665a9080bcb05d703bf981a579436fd05e
- https://git.kernel.org/stable/c/18d580cb00c55805633bae45e90cf22ed6b8e424
- https://git.kernel.org/stable/c/e2b7ee61989f2d39df6c2cc06f9db1aea69bdb09
- https://git.kernel.org/stable/c/2dcebbd1ad2e180fe7b98bf346ced69a872e11e6
- https://git.kernel.org/stable/c/e056e1dfcddca877dd46d704e8ec9860cfc9ec44
ADP enrichment
No English description supplied.
No references supplied.