netfilter: conntrack: revisit gc autotuning
- 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 4.20, 5.5, 5.11, 5.14, 5.15.34, 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
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: netfilter: conntrack: revisit gc autotuning as of commit 4608fdfc07e1 ("netfilter: conntrack: collect all entries in one cycle") conntrack gc was changed to run every 2 minutes. On systems where conntrack hash table is set to large value, most evictions happen from gc worker rather than the packet path due to hash table distribution. This causes netlink event overflows when events are collected. This change collects average expiry of scanned entries and reschedules to the average remaining value, within 1 to 60 second interval. To avoid event overflows, reschedule after each bucket and add a limit for both run time and number of evictions per run. If more entries have to be evicted, reschedule and restart 1 jiffy into the future.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From 4608fdfc07e116f9fc0895beb40abad7cdb5ee3d · fixed in 58d52743ae85d28c9335c6034d6ce350b8689951; From 4608fdfc07e116f9fc0895beb40abad7cdb5ee3d · fixed in 7cd361d5e6d986c0d4cafb9ceaa803359048ae15; From 4608fdfc07e116f9fc0895beb40abad7cdb5ee3d · fixed in 592e57591826f3d09c28d755a39ea8e9d13705ad; From 4608fdfc07e116f9fc0895beb40abad7cdb5ee3d · fixed in 2cfadb761d3d0219412fd8150faea60c7e863833; From 4.19.206 · fixed in 4.20; From 5.4.144 · fixed in 5.5; From 5.10.62 · fixed in 5.11; From 5.13.14 · fixed in 5.14
- Linux Linux
5.14
- KernelLinux
From 5.14.0 · fixed in 5.15.34; From 5.16.0 · fixed in 5.16.20; From 5.17.0 · fixed in 5.17.3