Linux Kernel up to 4.19.192/5.4.123/5.10.41/5.12.8 usbfs __GFP_NOWARN allocation of resources

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.5 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Linux Kernel up to 4.19.192/5.4.123/5.10.41/5.12.8 and classified as critical. This affects the function __GFP_NOWARN of the component usbfs. Executing a manipulation can lead to allocation of resources.
This vulnerability is tracked as CVE-2021-47170. No exploit exists.
It is suggested to upgrade the affected component.
Details
A vulnerability classified as critical was found in Linux Kernel up to 4.19.192/5.4.123/5.10.41/5.12.8. This vulnerability affects the function __GFP_NOWARN of the component usbfs. The manipulation with an unknown input leads to a allocation of resources vulnerability. The CWE definition for the vulnerability is CWE-770. The product allocates a reusable resource or group of resources on behalf of an actor without imposing any restrictions on the size or number of resources that can be allocated, in violation of the intended security policy for that actor. As an impact it is known to affect availability. CVE summarizes:
In the Linux kernel, the following vulnerability has been resolved: USB: usbfs: Don't WARN about excessively large memory allocations Syzbot found that the kernel generates a WARNing if the user tries to submit a bulk transfer through usbfs with a buffer that is way too large. This isn't a bug in the kernel; it's merely an invalid request from the user and the usbfs code does handle it correctly. In theory the same thing can happen with async transfers, or with the packet descriptor table for isochronous transfers. To prevent the MM subsystem from complaining about these bad allocation requests, add the __GFP_NOWARN flag to the kmalloc calls for these buffers.
The advisory is available at git.kernel.org. This vulnerability was named CVE-2021-47170. Technical details are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 276342 (TencentOS Server 2: kernel (TSSA-2024:0557)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 4.19.193, 5.4.124, 5.10.42, 5.12.9 or 5.13 eliminates this vulnerability. Applying the patch 2ab21d6e1411/2c835fede13e/8d83f109e920/9f7cb3f01a10/4f2629ea67e7 is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (276342) and CERT Bund (WID-SEC-2024-0699). If you want to get best quality of vulnerability data, you may have to visit VulDB.
Affected
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- EMC Avamar
- Dell NetWorker
- Open Source Linux Kernel
- IBM Spectrum Protect Plus
Product
Type
Vendor
Name
Version
- 4.19.192
- 5.4.123
- 5.10.0
- 5.10.1
- 5.10.2
- 5.10.3
- 5.10.4
- 5.10.5
- 5.10.6
- 5.10.7
- 5.10.8
- 5.10.9
- 5.10.10
- 5.10.11
- 5.10.12
- 5.10.13
- 5.10.14
- 5.10.15
- 5.10.16
- 5.10.17
- 5.10.18
- 5.10.19
- 5.10.20
- 5.10.21
- 5.10.22
- 5.10.23
- 5.10.24
- 5.10.25
- 5.10.26
- 5.10.27
- 5.10.28
- 5.10.29
- 5.10.30
- 5.10.31
- 5.10.32
- 5.10.33
- 5.10.34
- 5.10.35
- 5.10.36
- 5.10.37
- 5.10.38
- 5.10.39
- 5.10.40
- 5.10.41
- 5.12.0
- 5.12.1
- 5.12.2
- 5.12.3
- 5.12.4
- 5.12.5
- 5.12.6
- 5.12.7
- 5.12.8
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.6VulDB Meta Temp Score: 5.5
VulDB Base Score: 5.7
VulDB Temp Score: 5.5
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 5.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Allocation of resourcesCWE: CWE-770 / CWE-400 / CWE-404
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 276342
Nessus Name: TencentOS Server 2: kernel (TSSA-2024:0557)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Kernel 4.19.193/5.4.124/5.10.42/5.12.9/5.13
Patch: 2ab21d6e1411/2c835fede13e/8d83f109e920/9f7cb3f01a10/4f2629ea67e7
Timeline
03/25/2024 🔍03/25/2024 🔍
03/25/2024 🔍
11/23/2025 🔍
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2021-47170 (🔍)
GCVE (CVE): GCVE-0-2021-47170
GCVE (VulDB): GCVE-100-257842
CERT Bund: WID-SEC-2024-0699 - Linux-Kernel: Mehrere Schwachstellen ermöglichen Denial of Service und unspezifische Angriffe
Entry
Created: 03/25/2024 10:35Updated: 11/23/2025 21:26
Changes: 03/25/2024 10:35 (57), 05/04/2024 13:27 (1), 03/17/2025 16:17 (12), 08/04/2025 10:35 (7), 11/23/2025 21:26 (2)
Complete: 🔍
Cache ID: 216::103
If you want to get best quality of vulnerability data, you may have to visit VulDB.
No comments yet. Languages: en.
Please log in to comment.