CVE-2025-21704

Severity CVSS v4.0:
Pending analysis
Type:
CWE-787 Out-of-bounds Write
Publication date:
22/02/2025
Last modified:
03/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> usb: cdc-acm: Check control transfer buffer size before access<br /> <br /> If the first fragment is shorter than struct usb_cdc_notification, we can&amp;#39;t<br /> calculate an expected_size. Log an error and discard the notification<br /> instead of reading lengths from memory outside the received data, which can<br /> lead to memory corruption when the expected_size decreases between<br /> fragments, causing `expected_size - acm-&gt;nb_index` to wrap.<br /> <br /> This issue has been present since the beginning of git history; however,<br /> it only leads to memory corruption since commit ea2583529cd1<br /> ("cdc-acm: reassemble fragmented notifications").<br /> <br /> A mitigating factor is that acm_ctrl_irq() can only execute after userspace<br /> has opened /dev/ttyACM*; but if ModemManager is running, ModemManager will<br /> do that automatically depending on the USB device&amp;#39;s vendor/product IDs and<br /> its other interfaces.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 2.6.13 (including) 5.4.291 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.235 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.179 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 6.1.129 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.79 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.12.16 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 (including) 6.13.4 (excluding)
cpe:2.3:o:linux:linux_kernel:2.6.12:-:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:2.6.12:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:2.6.12:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:2.6.12:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:2.6.12:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.14:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.14:rc2:*:*:*:*:*:*