CVE-2021-47475
N/A
Summary
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 Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 5229159f1d052821007aff1a1beb7873eacf1a9f | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < ec85bcff4ed09260243d8f39faba99e1041718ba | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 7a2021b896de1ad559d33b5c5cdd20b982242088 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 199acd8c110e3ae62833c24f632b0bb1c9f012a9 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 33d7a470730dfe7c9bfc8da84575cf2cedd60d00 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 278484ae93297b1bb1ce755f9d3b6d95a48c7d47 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < 06ac746d57e6d32b062e220415c607b7e2e0fa50 | affected |
| Linux | Linux | 985cafccbf9b7f862aa1c5ee566801e18b5161fb < a23461c47482fc232ffc9b819539d1f837adf2b1 | affected |
| Linux | Linux | 2.6.31 | affected |
| Linux | Linux | 0 < 2.6.31 | unaffected |
| Linux | Linux | 4.4.292 <= 4.4.* | unaffected |
| Linux | Linux | 4.9.290 <= 4.9.* | unaffected |
| Linux | Linux | 4.14.255 <= 4.14.* | unaffected |
| Linux | Linux | 4.19.217 <= 4.19.* | unaffected |
| Linux | Linux | 5.4.159 <= 5.4.* | unaffected |
| Linux | Linux | 5.10.79 <= 5.10.* | unaffected |
| Linux | Linux | 5.14.18 <= 5.14.* | unaffected |
| Linux | Linux | 5.15.2 <= 5.15.* | unaffected |
| Linux | Linux | 5.16 <= * | unaffected |
Weaknesses
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: none
- Automatable: no
- Technical Impact: partial
CVE Program Container
Additional References
- https://git.kernel.org/stable/c/5229159f1d052821007aff1a1beb7873eacf1a9f
- https://git.kernel.org/stable/c/ec85bcff4ed09260243d8f39faba99e1041718ba
- https://git.kernel.org/stable/c/40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7
- https://git.kernel.org/stable/c/7a2021b896de1ad559d33b5c5cdd20b982242088
- https://git.kernel.org/stable/c/199acd8c110e3ae62833c24f632b0bb1c9f012a9
- https://git.kernel.org/stable/c/33d7a470730dfe7c9bfc8da84575cf2cedd60d00
- https://git.kernel.org/stable/c/278484ae93297b1bb1ce755f9d3b6d95a48c7d47
- https://git.kernel.org/stable/c/06ac746d57e6d32b062e220415c607b7e2e0fa50
- https://git.kernel.org/stable/c/a23461c47482fc232ffc9b819539d1f837adf2b1
References
- https://git.kernel.org/stable/c/5229159f1d052821007aff1a1beb7873eacf1a9f
- https://git.kernel.org/stable/c/ec85bcff4ed09260243d8f39faba99e1041718ba
- https://git.kernel.org/stable/c/40d2a7e278e2e7c0a5fd7e997e7eb63945bf93f7
- https://git.kernel.org/stable/c/7a2021b896de1ad559d33b5c5cdd20b982242088
- https://git.kernel.org/stable/c/199acd8c110e3ae62833c24f632b0bb1c9f012a9
- https://git.kernel.org/stable/c/33d7a470730dfe7c9bfc8da84575cf2cedd60d00
- https://git.kernel.org/stable/c/278484ae93297b1bb1ce755f9d3b6d95a48c7d47
- https://git.kernel.org/stable/c/06ac746d57e6d32b062e220415c607b7e2e0fa50
- https://git.kernel.org/stable/c/a23461c47482fc232ffc9b819539d1f837adf2b1
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.