CVE-2024-36978·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: net: sched: sch_multiq: fix possible OOB write in multiq_tune() q->bands will be assigned to qopt->bands to execute subsequent code logic after kmalloc. So the old q->bands should not be used in kmalloc. Otherwise, an out-of-bounds write will occur.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.9.6
- Published
How likely is exploitation
FIRST's Exploit Prediction Scoring System puts the probability of this CVE being exploited in the next 30 days at <0.1% — higher than 9% of all published CVEs. EPSS is an independent forecast of exploitation, not a severity rating: it says nothing about how much damage a successful attack does, which is what a CVSS score measures.
Read the two together. CVE-2024-36978 scores 7.8 on CVSS, so a successful attack would be serious — but at <0.1%, almost nobody is currently attempting it. That is a different situation from a flaw under mass exploitation, and it is usually the difference between patching on your next maintenance window and patching tonight.
Affected versions
From: 6.7
Until: 6.9.6
Fixed in: 6.9.6
How to fix this CVE
Update your Linux kernel to version 6.9.6 or later to resolve this memory allocation vulnerability in the multiq queuing discipline. The issue stems from incorrect buffer sizing during queue configuration changes, which could lead to kernel memory corruption. Applying this patch immediately is recommended for production systems, especially those using traffic shaping or QoS features.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Run 'uname -r' to check your current kernel version and compare against 6.9.6 or later
- Verify if multiq queuing discipline is active with 'tc qdisc show' and look for 'multiq' entries
- Search system logs for memory corruption indicators: 'sudo grep -i 'kernel.*oob\|out of bounds\|memory corruption' /var/log/kern.log'
- Confirm the patch is applied by checking '/proc/version' shows kernel 6.9.6+ or by verifying git commit hashes in kernel source
FAQ
What is CVE-2024-36978?
This vulnerability is a buffer overflow in the Linux kernel's multiq network scheduler that occurs when reconfiguring queue bands. An attacker with local access could trigger memory corruption by modifying traffic control settings, potentially gaining elevated privileges.
Is CVE-2024-36978 being actively exploited?
No, this vulnerability is not currently listed in CISA's Known Exploited Vulnerabilities (KEV) catalog and has no public exploits available. However, it should still be patched as a high-severity kernel flaw.
What versions of Kernel are affected by CVE-2024-36978?
Linux kernel versions 6.7 through 6.9.5 are vulnerable. Version 6.9.6 and all subsequent releases contain the fix.
How do I check if my server is vulnerable to CVE-2024-36978?
Run 'uname -r' and compare the output against 6.9.6. If your version is between 6.7 and 6.9.5, your system is vulnerable. Additionally, check if multiq qdisc is in use with 'tc qdisc show | grep multiq'.
Does Defensia detect CVE-2024-36978?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2024-36978 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/0f208fad86631e005754606c3ec80c0d44a11882
- https://git.kernel.org/stable/c/52b1aa07cda6a199cd6754d3798c7759023bc70f
- https://git.kernel.org/stable/c/54c2c171c11a798fe887b3ff72922aa9d1411c1e
- https://git.kernel.org/stable/c/598572c64287aee0b75bbba4e2881496878860f3
- https://git.kernel.org/stable/c/affc18fdc694190ca7575b9a86632a73b9fe043d
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-36978. Free for 1 server.
Get started free