CVE-2021-47475

comedi: vmk80xx: fix transfer-buffer overflows

HIGH
7.8
CVSS Score
Published: May 22, 2024 at 08:19 AM UTC
Updated: June 17, 2026 at 04:17 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.3%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: comedi: vmk80xx: fix transfer-buffer overflows The driver uses endpoint-sized USB transfer buffers but up until recently had no sanity checks on the sizes. Commit e1f13c879a7c ("staging: comedi: check validity of wMaxPacketSize of usb endpoints found") inadvertently fixed NULL-pointer dereferences when accessing the transfer buffers in case a malicious device has a zero wMaxPacketSize. Make sure to allocate buffers large enough to handle also the other accesses that are done without a size check (e.g. byte 18 in vmk80xx_cnt_insn_read() for the VMK8061_MODEL) to avoid writing beyond the buffers, for example, when doing descriptor fuzzing. The original driver was for a low-speed device with 8-byte buffers. Support was later added for a device that uses bulk transfers and is presumably a full-speed device with a maximum 64-byte wMaxPacketSize.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

2.6.31 ≤ v < 4.14.2552.6.31 ≤ v < 4.19.2172.6.31 ≤ v < 4.4.2922.6.31 ≤ v < 4.9.2902.6.31 ≤ v < 5.10.792.6.31 ≤ v < 5.14.182.6.31 ≤ v < 5.15.22.6.31 ≤ v < 5.162.6.31 ≤ v < 5.4.1594.10 ≤ v < 4.14.2554.15 ≤ v < 4.19.2174.20 ≤ v < 5.4.1594.5 ≤ v < 4.9.2905.11 ≤ v < 5.14.185.15 ≤ v < 5.15.25.5 ≤ v < 5.10.792.6.31985cafccbf9b7f862aa1c5ee566801e18b5161fb
Vendor states this is fixed in 06ac746d57e6d32b062e220415c607b7e2e0fa50 (fixed)
Vendor states this is fixed in 199acd8c110e3ae62833c24f632b0bb1c9f012a9 (fixed)
Vendor states this is fixed in 278484ae93297b1bb1ce755f9d3b6d95a48c7d47 (fixed)
Vendor states this is fixed in 33d7a470730dfe7c9bfc8da84575cf2cedd60d00 (fixed)
Vendor states this is fixed in 40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7 (fixed)
Vendor states this is fixed in 5229159f1d052821007aff1a1beb7873eacf1a9f (fixed)
Vendor states this is fixed in 7a2021b896de1ad559d33b5c5cdd20b982242088 (fixed)
Vendor states this is fixed in a23461c47482fc232ffc9b819539d1f837adf2b1 (fixed)
Vendor states this is fixed in ec85bcff4ed09260243d8f39faba99e1041718ba (fixed)
Vendor states this is fixed in 2.6.31 (unaffected)
Vendor states this is fixed in 4.14.255 (unaffected)
Vendor states this is fixed in 4.19.217 (unaffected)
Vendor states this is fixed in 4.4.292 (unaffected)
Vendor states this is fixed in 4.9.290 (unaffected)
Vendor states this is fixed in 5.10.79 (unaffected)
Vendor states this is fixed in 5.14.18 (unaffected)
Vendor states this is fixed in 5.15.2 (unaffected)
Vendor states this is fixed in 5.16 (unaffected)
Vendor states this is fixed in 5.4.159 (unaffected)

References (9)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/06ac746d57e6d32b062e220415c607b7e2e0fa50
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/199acd8c110e3ae62833c24f632b0bb1c9f012a9
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/278484ae93297b1bb1ce755f9d3b6d95a48c7d47
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/33d7a470730dfe7c9bfc8da84575cf2cedd60d00
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/5229159f1d052821007aff1a1beb7873eacf1a9f
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/7a2021b896de1ad559d33b5c5cdd20b982242088
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/a23461c47482fc232ffc9b819539d1f837adf2b1

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-787

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card