net/sched: Make cake_enqueue return NET_XMIT_CN when past buffer_limit
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: net/sched: Make cake_enqueue return NET_XMIT_CN when past buffer_limit The following setup can trigger a WARNING in htb_activate due to the condition: !cl->leaf.q->q.qlen tc qdisc del dev lo root tc qdisc add dev lo root handle 1: htb default 1 tc class add dev lo parent 1: classid 1:1 \ htb rate 64bit tc qdisc add dev lo parent 1:1 handle f: \ cake memlimit 1b ping -I lo -f -c1 -s64 -W0.001 127.0.0.1 This is because the low memlimit leads to a low buffer_limit, which causes packet dropping. However, cake_enqueue still returns NET_XMIT_SUCCESS, causing htb_enqueue to call htb_activate with an empty child qdisc. We should return NET_XMIT_CN when packets are dropped from the same tin and flow. I do not believe return value of NET_XMIT_CN is necessary for packet drops in the case of ack filtering, as that is meant to optimize performance, not to signal congestion.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
4.19
References 8
git.kernel.org
- stable/c/7689ab22de36f8db19095f6bdf11f28cfde92f5c
- stable/c/de04ddd2980b48caa8d7e24a7db2742917a8b280
- stable/c/0dacfc5372e314d1219f03e64dde3ab495a5a25e
- stable/c/710866fc0a64eafcb8bacd91bcb1329eb7e5035f
- stable/c/aa12ee1c1bd260943fd6ab556d8635811c332eeb
- stable/c/ff57186b2cc39766672c4c0332323933e5faaa88
- stable/c/62d591dde4defb1333d202410609c4ddeae060b3
- stable/c/15de71d06a400f7fdc15bf377a2552b0ec437cf5