CVE-2021-47239·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: net: usb: fix possible use-after-free in smsc75xx_bind The commit 46a8b29c6306 ("net: usb: fix memory leak in smsc75xx_bind") fails to clean up the work scheduled in smsc75xx_reset-> smsc75xx_set_multicast, which leads to use-after-free if the work is scheduled to start after the deallocation. In addition, this patch also removes a dangling pointer - dev->data[0]. This patch calls cancel_work_sync to cancel the scheduled work and set the dangling pointer to NULL.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.12.13
- 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-47239 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: 5.12.9
Until: 5.12.13
Fixed in: 5.12.13
How to fix this CVE
Update your Linux kernel to version 5.12.13 or later to resolve a use-after-free vulnerability in the SMSC75xx USB network driver. This flaw could allow local attackers to trigger memory corruption through improperly cleaned work queue operations. Apply the patch immediately to systems running affected kernel versions 5.12.9 through 5.12.12.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check your kernel version with: uname -r — Look for versions between 5.12.9 and 5.12.12
- Step 2: Verify if SMSC75xx USB network driver is loaded: lsmod | grep smsc75xx — If present, the vulnerable component is active
- Step 3: Search kernel logs for use-after-free or memory-related crashes: journalctl -k | grep -i 'use-after-free\|UAF\|smsc75xx'
- Step 4: After patching, confirm the kernel version: uname -r — Should show 5.12.13 or newer
FAQ
What is CVE-2021-47239?
This vulnerability is a use-after-free flaw in the Linux kernel's SMSC75xx USB network driver initialization. Improperly canceled work queue operations could allow a local attacker with device access to cause memory corruption or denial of service.
Is CVE-2021-47239 being actively exploited?
No — this CVE is not listed in CISA's Known Exploited Vulnerabilities catalog and no public exploits are currently available.
What versions of Kernel are affected by CVE-2021-47239?
Linux kernel versions 5.12.9 through 5.12.12 are vulnerable. Version 5.12.13 and later include the fix.
How do I check if my server is vulnerable to CVE-2021-47239?
Run: uname -r — If the output is 5.12.9, 5.12.10, 5.12.11, or 5.12.12, your system is vulnerable. Also check: lsmod | grep smsc75xx to confirm the driver is in use.
Does Defensia detect CVE-2021-47239?
Yes — Defensia's CVE advisory scanner compares installed kernel versions against the NVD database. If you are running a vulnerable kernel version on a monitored server, CVE-2021-47239 will appear in your dashboard with automated remediation steps and patch availability.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/14616c372a7be01a2fb8c56c9d8debd232b9e43d
- https://git.kernel.org/stable/c/2fc8300c9cfa5167fcb5b1a2a07db6f53e82f59b
- https://git.kernel.org/stable/c/4252bf6c2b245f47011098113d405ffad6ad5d5b
- https://git.kernel.org/stable/c/56b786d86694e079d8aad9b314e015cd4ac02a3d
- https://git.kernel.org/stable/c/570a52cf3e01d19f7fd1a251dfc52b0cd86c13cb
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47239. Free for 1 server.
Get started free