CVE-2021-47280·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: drm: Fix use-after-free read in drm_getunique() There is a time-of-check-to-time-of-use error in drm_getunique() due to retrieving file_priv->master prior to locking the device's master mutex. An example can be seen in the crash report of the use-after-free error found by Syzbot: https://syzkaller.appspot.com/bug?id=148d2f1dfac64af52ffd27b661981a540724f803 In the report, the master pointer was used after being freed. This is because another process had acquired the device's master mutex in drm_setmaster_ioctl(), then overwrote fpriv->master in drm_new_set_master(). The old value of fpriv->master was subsequently freed before the mutex was unlocked. To fix this, we lock the device's master mutex before retrieving the pointer from from fpriv->master. This patch passes the Syzbot reproducer test.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.12.11
- 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 3% 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-2021-47280 scores 7 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: 5.11
Until: 5.12.11
Fixed in: 5.12.11
How to fix this CVE
Update your Linux kernel to version 5.12.11 or later to fix a race condition in the DRM subsystem's master device handling. This vulnerability allows local attackers with limited privileges to trigger a use-after-free condition by manipulating concurrent access to the master pointer. Apply the patch immediately on systems where DRM (Direct Rendering Manager) is in use, particularly those running kernels between 5.11 and 5.12.10.
sudo dnf update kernelDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check current kernel version with `uname -r` and compare against affected range 5.11.x to 5.12.10
- Step 2: Verify DRM is loaded by checking `lsmod | grep drm` — if output is empty, DRM is not actively used
- Step 3: Search kernel logs for drm_getunique() errors or master pointer warnings using `sudo dmesg | grep -i drm` or `sudo journalctl -k | grep -i drm`
- Step 4: After patching, confirm kernel upgraded with `uname -r` showing version 5.12.11 or later, then reboot if kernel version changed
FAQ
What is CVE-2021-47280?
CVE-2021-47280 is a time-of-check-to-time-of-use (TOCTOU) race condition in the Linux kernel's DRM subsystem where the master device pointer is accessed without proper synchronization, allowing use-after-free memory access.
Is CVE-2021-47280 being actively exploited?
No, CVE-2021-47280 is not listed in CISA's Known Exploited Vulnerabilities catalog and no public exploits are available, though the vulnerability was discovered through Syzbot's automated fuzzing.
What versions of Kernel are affected by CVE-2021-47280?
Linux kernel versions 5.11.0 through 5.12.10 are vulnerable; version 5.12.11 and later contain the fix.
How do I check if my server is vulnerable to CVE-2021-47280?
Run `uname -r` to get your kernel version — if it reports 5.11.x or 5.12.0-5.12.10, your system is vulnerable and requires immediate patching.
Does Defensia detect CVE-2021-47280?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Kernel is installed on a monitored server, CVE-2021-47280 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/17dab9326ff263c62dab1dbac4492e2938a049e4
- https://git.kernel.org/stable/c/491d52e0078860b33b6c14f0a7ac74ca1b603bd6
- https://git.kernel.org/stable/c/7d233ba700ceb593905ea82b42dadb4ec8ef85e9
- https://git.kernel.org/stable/c/b246b4c70c1250e7814f409b243000f9c0bf79a3
- https://git.kernel.org/stable/c/b436acd1cf7fac0ba987abd22955d98025c80c2b
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47280. Free for 1 server.
Get started free