CVE-2021-47646·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: Revert "Revert "block, bfq: honor already-setup queue merges"" A crash [1] happened to be triggered in conjunction with commit 2d52c58b9c9b ("block, bfq: honor already-setup queue merges"). The latter was then reverted by commit ebc69e897e17 ("Revert "block, bfq: honor already-setup queue merges""). Yet, the reverted commit was not the one introducing the bug. In fact, it actually triggered a UAF introduced by a different commit, and now fixed by commit d29bd41428cf ("block, bfq: reset last_bfqq_created on group change"). So, there is no point in keeping commit 2d52c58b9c9b ("block, bfq: honor already-setup queue merges") out. This commit restores it. [1] https://bugzilla.kernel.org/show_bug.cgi?id=214503
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.17.2
- Published
- 2025-02-26
Affected versions
From: 5.17
Until: 5.17.2
Fixed in: 5.17.2
How to fix this CVE
Update your Linux kernel to version 5.17.2 or later to resolve this use-after-free (UAF) vulnerability in the block I/O scheduler. The fix restores proper queue merge handling that was inadvertently reverted, eliminating kernel crashes that occur during block device operations. Apply this patch immediately to prevent potential system instability and data corruption.
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; vulnerable versions are 5.17 through 5.17.1
- Check if BFQ I/O scheduler is enabled: `cat /sys/block/sda/queue/scheduler | grep bfq`
- Search kernel logs for UAF patterns: `sudo dmesg | grep -i "use-after-free\|UAF\|NULL pointer dereference"
- Verify the fix by confirming kernel version is 5.17.2 or later with `uname -r`
FAQ
What is CVE-2021-47646?
This CVE is a use-after-free vulnerability in the Linux kernel's BFQ block I/O scheduler that causes kernel crashes when queue merges are processed incorrectly, potentially leading to data corruption or denial of service.
Is CVE-2021-47646 being actively exploited?
No, this vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are available.
What versions of Kernel are affected by CVE-2021-47646?
Linux kernel versions 5.17 through 5.17.1 are vulnerable; version 5.17.2 and later contain the fix.
How do I check if my server is vulnerable to CVE-2021-47646?
Run `uname -r` and compare your kernel version against 5.17.2; if your version is 5.17.0 or 5.17.1, you are vulnerable.
Does Defensia detect CVE-2021-47646?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2021-47646 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/15729ff8143f8135b03988a100a19e66d7cb7ecd
- https://git.kernel.org/stable/c/4083925bd6dc89216d156474a8076feec904e607
- https://git.kernel.org/stable/c/65d8a737452e88f251fe5d925371de6d606df613
- https://git.kernel.org/stable/c/931aff627469a75c77b9fd3823146d0575afffd6
- https://git.kernel.org/stable/c/abc2129e646af7b43025d90a071f83043f1ae76c
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47646. Free for 1 server.
Get started free