Subject: CVE-2024-46747: HID: cougar: fix slab-out-of-bounds Read in cougar_report_fixup

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

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

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

HID: cougar: fix slab-out-of-bounds Read in cougar_report_fixup

report_fixup for the Cougar 500k Gaming Keyboard was not verifying
that the report descriptor size was correct before accessing it

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

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

	Fixed in 4.19.322 with commit e239e44dcd41
	Fixed in 5.4.284 with commit fac3cb3c6428
	Fixed in 5.10.226 with commit 34185de73d74
	Fixed in 5.15.167 with commit 890dde6001b6
	Fixed in 6.1.110 with commit e4a602a45aec
	Fixed in 6.6.51 with commit 30e9ce7cd559
	Fixed in 6.10.10 with commit 48b2108efa20
	Fixed in 6.11 with commit a6e9c391d45b

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-46747
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/hid/hid-cougar.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/e239e44dcd419b13cf840e2a3a833204e4329714
	https://git.kernel.org/stable/c/fac3cb3c6428afe2207593a183b5bc4742529dfd
	https://git.kernel.org/stable/c/34185de73d74fdc90e8651cfc472bfea6073a13f
	https://git.kernel.org/stable/c/890dde6001b651be79819ef7a3f8c71fc8f9cabf
	https://git.kernel.org/stable/c/e4a602a45aecd6a98b4b37482f5c9f8f67a32ddd
	https://git.kernel.org/stable/c/30e9ce7cd5591be639b53595c95812f1a2afdfdc
	https://git.kernel.org/stable/c/48b2108efa205f4579052c27fba2b22cc6ad8aa0
	https://git.kernel.org/stable/c/a6e9c391d45b5865b61e569146304cff72821a5d