CVE-2024-26659

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

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> xhci: handle isoc Babble and Buffer Overrun events properly<br /> <br /> xHCI 4.9 explicitly forbids assuming that the xHC has released its<br /> ownership of a multi-TRB TD when it reports an error on one of the<br /> early TRBs. Yet the driver makes such assumption and releases the TD,<br /> allowing the remaining TRBs to be freed or overwritten by new TDs.<br /> <br /> The xHC should also report completion of the final TRB due to its IOC<br /> flag being set by us, regardless of prior errors. This event cannot<br /> be recognized if the TD has already been freed earlier, resulting in<br /> "Transfer event TRB DMA ptr not part of current TD" error message.<br /> <br /> Fix this by reusing the logic for processing isoc Transaction Errors.<br /> This also handles hosts which fail to report the final completion.<br /> <br /> Fix transfer length reporting on Babble errors. They may be caused by<br /> device malfunction, no guarantee that the buffer has been filled.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.10.213 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.152 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 6.1.82 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.17 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.7.5 (excluding)
cpe:2.3:o:linux:linux_kernel:6.8:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.8:rc2:*:*:*:*:*:*
cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*