Vulnerability · Published May 22, 2024 · Assigned by Linux

CVE-2021-47475comedi: vmk80xx: fix transfer-buffer overflows

High 7.8

In plain English

A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 18% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)7.8High
Exploit odds (30 days)0.3%top 82.4% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official 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 packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux5.15.3-1DEBIAN-CVE-2021-47475
Debian:13linux5.15.3-1DEBIAN-CVE-2021-47475
Debian:14linux5.15.3-1DEBIAN-CVE-2021-47475
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2021-47475
Ubuntu:24.04:LTSlinux-raspi-realtimeno fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2021-47475
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2021-47475

Affected products (as reported)

VendorProductVersions
Linux Linux 985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 5229159f1d052821007aff1a1beb7873eacf1a9f985cafccbf9b7f862aa1c5ee566801e18b5161fb – before ec85bcff4ed09260243d8f39faba99e1041718ba985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 7a2021b896de1ad559d33b5c5cdd20b982242088985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 199acd8c110e3ae62833c24f632b0bb1c9f012a9985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 33d7a470730dfe7c9bfc8da84575cf2cedd60d00985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 278484ae93297b1bb1ce755f9d3b6d95a48c7d47985cafccbf9b7f862aa1c5ee566801e18b5161fb – before 06ac746d57e6d32b062e220415c607b7e2e0fa50
Linux Linux 2.6.31

References