Subject: CVE-2024-45011: char: xillybus: Check USB endpoints when probing device

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

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

char: xillybus: Check USB endpoints when probing device

Ensure, as the driver probes the device, that all endpoints that the
driver may attempt to access exist and are of the correct type.

All XillyUSB devices must have a Bulk IN and Bulk OUT endpoint at
address 1. This is verified in xillyusb_setup_base_eps().

On top of that, a XillyUSB device may have additional Bulk OUT
endpoints. The information about these endpoints' addresses is deduced
from a data structure (the IDT) that the driver fetches from the device
while probing it. These endpoints are checked in setup_channels().

A XillyUSB device never has more than one IN endpoint, as all data
towards the host is multiplexed in this single Bulk IN endpoint. This is
why setup_channels() only checks OUT endpoints.

The Linux kernel CVE team has assigned CVE-2024-45011 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 5.14 with commit a53d1202aef1 and fixed in 5.15.166 with commit 25ee8b290820
	Issue introduced in 5.14 with commit a53d1202aef1 and fixed in 6.1.107 with commit 4267131278f5
	Issue introduced in 5.14 with commit a53d1202aef1 and fixed in 6.6.48 with commit 5cff754692ad
	Issue introduced in 5.14 with commit a53d1202aef1 and fixed in 6.10.7 with commit 1371d32b9597
	Issue introduced in 5.14 with commit a53d1202aef1 and fixed in 6.11 with commit 2374bf7558de

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2024-45011
will be updated if fixes are backported, please check that for the most
up to date information about this issue.

Affected files
==============

The file(s) affected by this issue are:
	drivers/char/xillybus/xillyusb.c

Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/25ee8b2908200fc862c0434e5ad483817d50ceda
	https://git.kernel.org/stable/c/4267131278f5cc98f8db31d035d64bdbbfe18658
	https://git.kernel.org/stable/c/5cff754692ad45d5086b75fef8cc3a99c30a1005
	https://git.kernel.org/stable/c/1371d32b95972d39c1e6e4bae8b6d0df1b573731
	https://git.kernel.org/stable/c/2374bf7558de915edc6ec8cb10ec3291dfab9594