CVE-2021-47475
Severity CVSS v4.0:
Pending analysis
Type:
CWE-787
Out-of-bounds Write
Publication date:
22/05/2024
Last modified:
24/09/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
comedi: vmk80xx: fix transfer-buffer overflows<br />
<br />
The driver uses endpoint-sized USB transfer buffers but up until<br />
recently had no sanity checks on the sizes.<br />
<br />
Commit e1f13c879a7c ("staging: comedi: check validity of wMaxPacketSize<br />
of usb endpoints found") inadvertently fixed NULL-pointer dereferences<br />
when accessing the transfer buffers in case a malicious device has a<br />
zero wMaxPacketSize.<br />
<br />
Make sure to allocate buffers large enough to handle also the other<br />
accesses that are done without a size check (e.g. byte 18 in<br />
vmk80xx_cnt_insn_read() for the VMK8061_MODEL) to avoid writing beyond<br />
the buffers, for example, when doing descriptor fuzzing.<br />
<br />
The original driver was for a low-speed device with 8-byte buffers.<br />
Support was later added for a device that uses bulk transfers and is<br />
presumably a full-speed device with a maximum 64-byte wMaxPacketSize.
Impact
Base Score 3.x
7.80
Severity 3.x
HIGH
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 2.6.31 (including) | 4.4.292 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.5 (including) | 4.9.290 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.10 (including) | 4.14.255 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.217 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.159 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.79 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.14.18 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.15 (including) | 5.15.2 (excluding) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/06ac746d57e6d32b062e220415c607b7e2e0fa50
- https://git.kernel.org/stable/c/199acd8c110e3ae62833c24f632b0bb1c9f012a9
- https://git.kernel.org/stable/c/278484ae93297b1bb1ce755f9d3b6d95a48c7d47
- https://git.kernel.org/stable/c/33d7a470730dfe7c9bfc8da84575cf2cedd60d00
- https://git.kernel.org/stable/c/40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7
- https://git.kernel.org/stable/c/5229159f1d052821007aff1a1beb7873eacf1a9f
- https://git.kernel.org/stable/c/7a2021b896de1ad559d33b5c5cdd20b982242088
- https://git.kernel.org/stable/c/a23461c47482fc232ffc9b819539d1f837adf2b1
- https://git.kernel.org/stable/c/ec85bcff4ed09260243d8f39faba99e1041718ba
- https://git.kernel.org/stable/c/06ac746d57e6d32b062e220415c607b7e2e0fa50
- https://git.kernel.org/stable/c/199acd8c110e3ae62833c24f632b0bb1c9f012a9
- https://git.kernel.org/stable/c/278484ae93297b1bb1ce755f9d3b6d95a48c7d47
- https://git.kernel.org/stable/c/33d7a470730dfe7c9bfc8da84575cf2cedd60d00
- https://git.kernel.org/stable/c/40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7
- https://git.kernel.org/stable/c/5229159f1d052821007aff1a1beb7873eacf1a9f
- https://git.kernel.org/stable/c/7a2021b896de1ad559d33b5c5cdd20b982242088
- https://git.kernel.org/stable/c/a23461c47482fc232ffc9b819539d1f837adf2b1
- https://git.kernel.org/stable/c/ec85bcff4ed09260243d8f39faba99e1041718ba



