CVE-2021-47388·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: mac80211: fix use-after-free in CCMP/GCMP RX When PN checking is done in mac80211, for fragmentation we need to copy the PN to the RX struct so we can later use it to do a comparison, since commit bf30ca922a0c ("mac80211: check defrag PN against current frame"). Unfortunately, in that commit I used the 'hdr' variable without it being necessarily valid, so use-after-free could occur if it was necessary to reallocate (parts of) the frame. Fix this by reloading the variable after the code that results in the reallocations, if any. This fixes https://bugzilla.kernel.org/show_bug.cgi?id=214401.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.14.10
- Published
- 2024-05-21
Affected versions
From: 5.12.9
Until: 5.14.10
Fixed in: 5.14.10
How to fix this CVE
Update your Linux kernel to version 5.14.10 or later to resolve a use-after-free vulnerability in the CCMP/GCMP receive path that could allow local privilege escalation. This issue affects kernel versions 5.12.9 through 5.14.9 and is triggered when the packet header pointer is accessed after frame reallocation during defragmentation. Applying this kernel patch eliminates the unsafe memory access that could compromise system security.
sudo dnf update kernel kernel-devel && sudo rebootDefensia detects this vulnerability
How to check if you are affected
- Check current kernel version: uname -r — compare against affected range 5.12.9-5.14.9
- Verify mac80211 wireless driver is loaded: lsmod | grep mac80211 — if not present, vulnerability is not exposed
- Review kernel logs for memory-related errors near wireless operations: sudo dmesg | grep -i 'use.after.free\|uaf\|segfault' | tail -20
- Confirm kernel update applied: uname -r should show version 5.14.10 or higher after reboot
FAQ
What is CVE-2021-47388?
This vulnerability is a use-after-free flaw in the Linux kernel's mac80211 wireless driver that occurs when processing fragmented CCMP/GCMP encrypted packets. The packet header pointer becomes invalid after frame reallocation during defragmentation, potentially allowing local attackers to trigger a crash or escalate privileges.
Is CVE-2021-47388 being actively exploited?
No, this vulnerability is not listed in CISA's Known Exploited Vulnerabilities (KEV) catalog and no public exploits are known to exist. However, its local privilege escalation capability makes it a high-priority patch for production systems.
What versions of Kernel are affected by CVE-2021-47388?
Linux kernel versions 5.12.9 through 5.14.9 are vulnerable. The fix was included in version 5.14.10. Earlier kernel versions (pre-5.12.9) and later versions (5.14.10+) are not affected.
How do I check if my server is vulnerable to CVE-2021-47388?
Run 'uname -r' and verify your kernel version. If it reports a version between 5.12.9 and 5.14.9 inclusive, and 'lsmod | grep mac80211' shows the wireless driver is loaded, your system is vulnerable.
Does Defensia detect CVE-2021-47388?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2021-47388 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/27d3eb5616ee2c0a3b30c3fa34813368ed1f3dc9
- https://git.kernel.org/stable/c/31de381aef0ab1b342f62485118dc8a19363dc78
- https://git.kernel.org/stable/c/3d5d629c99c468458022e9b381789de3595bf4dd
- https://git.kernel.org/stable/c/447d001b875d0e7f211c4ba004916028da994258
- https://git.kernel.org/stable/c/50149e0866a82cef33e680ee68dc380a5bc75d32
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47388. Free for 1 server.
Get started free