CVE-2024-41035

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
29/07/2024
Last modified:
03/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor<br /> <br /> Syzbot has identified a bug in usbcore (see the Closes: tag below)<br /> caused by our assumption that the reserved bits in an endpoint<br /> descriptor&amp;#39;s bEndpointAddress field will always be 0. As a result of<br /> the bug, the endpoint_is_duplicate() routine in config.c (and possibly<br /> other routines as well) may believe that two descriptors are for<br /> distinct endpoints, even though they have the same direction and<br /> endpoint number. This can lead to confusion, including the bug<br /> identified by syzbot (two descriptors with matching endpoint numbers<br /> and directions, where one was interrupt and the other was bulk).<br /> <br /> To fix the bug, we will clear the reserved bits in bEndpointAddress<br /> when we parse the descriptor. (Note that both the USB-2.0 and USB-3.1<br /> specs say these bits are "Reserved, reset to zero".) This requires us<br /> to make a copy of the descriptor earlier in usb_parse_endpoint() and<br /> use the copy instead of the original when checking for duplicates.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.2.87 (including) 3.3 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.10.106 (including) 3.11 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.12.70 (including) 3.13 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.16.42 (including) 3.17 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.1.39 (including) 4.2 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.4.42 (including) 4.5 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.9.3 (including) 4.10 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.10.1 (including) 4.19.318 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 5.4.280 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.222 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.163 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 6.1.100 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.41 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.9.10 (excluding)
cpe:2.3:o:linux:linux_kernel:4.10:-:*:*:*:*:*:*