CVE-2024-26659CWE-787

CVE-2024-26659

High · published April 2, 2024

CVSS v3.1
7.8
EPSS
0%
Percentile
14.5
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

xhci: handle isoc Babble and Buffer Overrun events properly

xHCI 4.9 explicitly forbids assuming that the xHC has released its

ownership of a multi-TRB TD when it reports an error on one of the

early TRBs. Yet the driver makes such assumption and releases the TD,

allowing the remaining TRBs to be freed or overwritten by new TDs.

The xHC should also report completion of the final TRB due to its IOC

flag being set by us, regardless of prior errors. This event cannot

be recognized if the TD has already been freed earlier, resulting in

"Transfer event TRB DMA ptr not part of current TD" error message.

Fix this by reusing the logic for processing isoc Transaction Errors.

This also handles hosts which fail to report the final completion.

Fix transfer length reporting on Babble errors. They may be caused by

device malfunction, no guarantee that the buffer has been filled.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00242 · 14.5th percentile
Weakness
CWE-787 · Out-of-bounds Write
Published
2024-04-02T11:15Z
Affected products (8)
ProductVersionsFixed in
linux/linux_kernel< 5.10.2135.10.213
linux/linux_kernel≥ 5.11, < 5.15.1525.15.152
linux/linux_kernel≥ 5.16, < 6.1.826.1.82
linux/linux_kernel≥ 6.2, < 6.6.176.6.17
linux/linux_kernel≥ 6.7, < 6.7.56.7.5
linux/linux_kernelall versions—
linux/linux_kernelall versions—
debian/debian_linuxall versions—
References (14)
https://git.kernel.org/stable/c/2aa7bcfdbb46241c701811bbc0d64d7884e3346c · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/2e3ec80ea7ba58bbb210e83b5a0afefee7c171d3 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/418456c0ce56209610523f21734c5612ee634134 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/696e4112e5c1ee61996198f0ebb6ca3fab55166e · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/7c4650ded49e5b88929ecbbb631efb8b0838e811 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/f5e7ffa9269a448a720e21f1ed1384d118298c97 · 416baaa9-dc9f-4396-8d5f-8c081fb06d67https://git.kernel.org/stable/c/2aa7bcfdbb46241c701811bbc0d64d7884e3346c · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/2e3ec80ea7ba58bbb210e83b5a0afefee7c171d3 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/418456c0ce56209610523f21734c5612ee634134 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/696e4112e5c1ee61996198f0ebb6ca3fab55166e · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/7c4650ded49e5b88929ecbbb631efb8b0838e811 · af854a3a-2127-422b-91ae-364da2661108https://git.kernel.org/stable/c/f5e7ffa9269a448a720e21f1ed1384d118298c97 · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html · af854a3a-2127-422b-91ae-364da2661108https://cert-portal.siemens.com/productcert/html/ssa-265688.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
EPSS history
Timeline
  • 02 APR 06:22Z
    xhci: handle isoc Babble and Buffer Overrun events properly
    cvelistv5