net/sched: fq_pie: clamp quantum in change path
- 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
- Fix
- Fixed in 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.111, and 2 more
- 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
Summary
In the Linux kernel, the following vulnerability has been resolved: net/sched: fq_pie: clamp quantum in change path fq_pie_change() accepts any quantum value from userspace, including 1. With a crafted size table qdisc_pkt_len reaches ~2 GiB, so quantum=1 makes the deficit-refill loop spin ~2^31 times under the qdisc lock (a soft lockup / denial of service). Add max(256U, ...) matching fq_codel_change(). Conditions to recreate the bug: CONFIG_NET_SCH_FQ_PIE=y. Requires CAP_NET_ADMIN (namespace-local via unshare -Urn suffices). tc qdisc add dev dummy0 root fq_pie tc qdisc change dev dummy0 root fq_pie quantum 1 stab data 32768 size_log 15 cell_log 0
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in ff4f3a0f3abd2ded467931d7da7984a68a768e0b; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in 749aaebc1eb92ce2f38fd3caf68a2f99686d84ef; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in 8fd98e56c41f79278eeb67512c28d7abc175bcf4; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in 215df1e953ae72a09d425ec188e054058ae23dc9; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in f90fe65b977e7aa9eb302230a09eb18f8c32ceaa; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in c11e3a39807eb5a200445ae9082843ab86800415; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in 6655b56e2801008566c594ef231f6c7b3f716c61; From ec97ecf1ebe485a17cd8395a5f35e6b80b57665a · fixed in 4864f58c53eb47257d55e01f47d4a9f355f7f970
- Linux Linux
5.6
- KernelLinux
From 5.6.0 · fixed in 5.10.271; From 5.11.0 · fixed in 5.15.222; From 5.16.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.111; From 6.13.0 · fixed in 6.18.53; From 6.19.0 · fixed in 7.2.7
References 8
git.kernel.org
- stable/c/ff4f3a0f3abd2ded467931d7da7984a68a768e0b
- stable/c/749aaebc1eb92ce2f38fd3caf68a2f99686d84ef
- stable/c/8fd98e56c41f79278eeb67512c28d7abc175bcf4
- stable/c/215df1e953ae72a09d425ec188e054058ae23dc9
- stable/c/f90fe65b977e7aa9eb302230a09eb18f8c32ceaa
- stable/c/c11e3a39807eb5a200445ae9082843ab86800415
- stable/c/6655b56e2801008566c594ef231f6c7b3f716c61
- stable/c/4864f58c53eb47257d55e01f47d4a9f355f7f970