CVE-2024-57899·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: fix mbss changed flags corruption on 32 bit systems On 32-bit systems, the size of an unsigned long is 4 bytes, while a u64 is 8 bytes. Therefore, when using or_each_set_bit(bit, &bits, sizeof(changed) * BITS_PER_BYTE), the code is incorrectly searching for a bit in a 32-bit variable that is expected to be 64 bits in size, leading to incorrect bit finding. Solution: Ensure that the size of the bits variable is correctly adjusted for each architecture. Call Trace: ? show_regs+0x54/0x58 ? __warn+0x6b/0xd4 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? report_bug+0x113/0x150 ? exc_overflow+0x30/0x30 ? handle_bug+0x27/0x44 ? exc_invalid_op+0x18/0x50 ? handle_exception+0xf6/0xf6 ? exc_overflow+0x30/0x30 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? exc_overflow+0x30/0x30 ? ieee80211_link_info_change_notify+0xcc/0xd4 [mac80211] ? ieee80211_mesh_work+0xff/0x260 [mac80211] ? cfg80211_wiphy_work+0x72/0x98 [cfg80211] ? process_one_work+0xf1/0x1fc ? worker_thread+0x2c0/0x3b4 ? kthread+0xc7/0xf0 ? mod_delayed_work_on+0x4c/0x4c ? kthread_complete_and_exit+0x14/0x14 ? ret_from_fork+0x24/0x38 ? kthread_complete_and_exit+0x14/0x14 ? ret_from_fork_asm+0xf/0x14 ? entry_INT80_32+0xf0/0xf0 [restore no-op path for no changes]
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.12.9
- 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 10% 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-57899 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.12.9
Fixed in: 6.12.9
How to fix this CVE
Update your Linux kernel to version 6.12.9 or later to resolve a critical bit-manipulation flaw in the mac80211 WiFi subsystem that causes memory corruption on 32-bit systems. This vulnerability triggers kernel panics and system instability when the wireless driver attempts to process multi-BSS configuration changes. Ensure you reboot after applying the kernel update to activate the patched version.
sudo dnf update kernel kernel-devel && sudo rebootDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check your installed kernel version with `uname -r` and compare it against the affected range (6.7 to 6.12.8)
- Step 2: Verify if mac80211 wireless driver is loaded by running `lsmod | grep mac80211` to confirm the vulnerable component is active
- Step 3: Search system logs for overflow and invalid operation errors with `sudo grep -i 'exc_overflow\|exc_invalid_op\|ieee80211_link_info_change' /var/log/kern.log* /var/log/messages*`
- Step 4: After applying updates, run `uname -r` again and confirm the kernel version is 6.12.9 or later, then verify the system rebooted successfully
FAQ
What is CVE-2024-57899?
This vulnerability exists in the Linux kernel's mac80211 WiFi driver and involves incorrect bit-width handling on 32-bit architectures. When processing multi-BSS (MBSS) configuration changes, the driver attempts to iterate through bits in a 32-bit variable using a 64-bit iteration size, causing incorrect memory access and kernel panics.
Is CVE-2024-57899 being actively exploited?
No, this vulnerability is not listed on the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits have been disclosed. However, it can be triggered locally by users with WiFi driver access.
What versions of Kernel are affected by CVE-2024-57899?
Linux kernel versions 6.7 through 6.12.8 are vulnerable. The fix is included in version 6.12.9 and later stable releases.
How do I check if my server is vulnerable to CVE-2024-57899?
Run `uname -r` to display your kernel version. If the output shows a version between 6.7 and 6.12.8 (inclusive) and mac80211 is active (`lsmod | grep mac80211`), your system is vulnerable.
Does Defensia detect CVE-2024-57899?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2024-57899 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-57899. Free for 1 server.
Get started free