CVE-2024-57986

In the Linux kernel, the following vulnerability has been resolved: HID: core: Fix assumption that Resolution Multipliers must be in Logical Collections A report in 2019 by the syzbot fuzzer was found to be connected to two errors in the HID core associated with Resolution Multipliers. One of the errors was fixed by commit ea427a222d8b ("HID: core: Fix deadloop in hid_apply_multiplier."), but the other has not been fixed. This error arises because hid_apply_multipler() assumes that every Resolution Multiplier control is contained in a Logical Collection, i.e., there's no way the routine can ever set multiplier_collection to NULL. This is in spite of the fact that the function starts with a big comment saying: * "The Resolution Multiplier control must be contained in the same * Logical Collection as the control(s) to which it is to be applied. ... * If no Logical Collection is * defined, the Resolution Multiplier is associated with all * controls in the report." * HID Usage Table, v1.12, Section 4.3.1, p30 * * Thus, search from the current collection upwards until we find a * logical collection... The comment and the code overlook the possibility that none of the collections found may be a Logical Collection. The fix is to set the multiplier_collection pointer to NULL if the collection found isn't a Logical Collection.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

23 Oct 2025, 17:55

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/05dd7d10675b540b8b7b31035c0a8abb6e6f3b88 - () https://git.kernel.org/stable/c/05dd7d10675b540b8b7b31035c0a8abb6e6f3b88 - Patch
References () https://git.kernel.org/stable/c/3a002e4029230d9a6be89f869b2328b258612f5c - () https://git.kernel.org/stable/c/3a002e4029230d9a6be89f869b2328b258612f5c - Patch
References () https://git.kernel.org/stable/c/64f2657b579343cf923aa933f08074e6258eb07b - () https://git.kernel.org/stable/c/64f2657b579343cf923aa933f08074e6258eb07b - Patch
References () https://git.kernel.org/stable/c/a32ea3f982b389ea43a41ce77b6fb70d74006d9b - () https://git.kernel.org/stable/c/a32ea3f982b389ea43a41ce77b6fb70d74006d9b - Patch
References () https://git.kernel.org/stable/c/a5498f1f864ea26f4c613c77f54409c776a95a90 - () https://git.kernel.org/stable/c/a5498f1f864ea26f4c613c77f54409c776a95a90 - Patch
References () https://git.kernel.org/stable/c/bebf542e8d7c44a18a95f306b1b5dc160c823506 - () https://git.kernel.org/stable/c/bebf542e8d7c44a18a95f306b1b5dc160c823506 - Patch
References () https://git.kernel.org/stable/c/ebaeca33d32c8bdb705a8c88267737a456f354b1 - () https://git.kernel.org/stable/c/ebaeca33d32c8bdb705a8c88267737a456f354b1 - Patch
References () https://git.kernel.org/stable/c/ed3d3883476423f337aac0f22c521819b3f1e970 - () https://git.kernel.org/stable/c/ed3d3883476423f337aac0f22c521819b3f1e970 - Patch
First Time Linux
Linux linux Kernel
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
CWE NVD-CWE-noinfo
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

13 Mar 2025, 13:15

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/05dd7d10675b540b8b7b31035c0a8abb6e6f3b88 -
  • () https://git.kernel.org/stable/c/3a002e4029230d9a6be89f869b2328b258612f5c -
  • () https://git.kernel.org/stable/c/a32ea3f982b389ea43a41ce77b6fb70d74006d9b -
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: HID: core: Fix posture that Resolution Multipliers must be in Logical Collections Se descubrió que un informe de 2019 del fuzzer syzbot estaba relacionado con dos errores en el núcleo de HID asociados con Resolution Multipliers. Uno de los errores se solucionó con el commit ea427a222d8b ("HID: core: Fix deadloop in hid_apply_multipler."), pero el otro no se solucionó. Este error surge porque hid_apply_multipler() asume que cada control Resolution Multiplier está contenido en una colección lógica, es decir, no hay forma de que la rutina pueda establecer multiplier_collection en NULL. Esto es a pesar del hecho de que la función comienza con un gran comentario que dice: * "El control Multiplicador de resolución debe estar contenido en la misma * Colección lógica que el control o los controles a los que se aplicará. ... * Si no se define ninguna Colección lógica, el Multiplicador de resolución se asocia con todos los * controles del informe". * Tabla de uso de HID, v1.12, Sección 4.3.1, p30 * * Por lo tanto, busque desde la colección actual hacia arriba hasta que encontremos una * colección lógica... El comentario y el código pasan por alto la posibilidad de que ninguna de las colecciones encontradas pueda ser una Colección lógica. La solución es establecer el puntero multiplier_collection en NULL si la colección encontrada no es una Colección lógica.

27 Feb 2025, 02:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-02-27 02:15

Updated : 2025-10-23 17:55


NVD link : CVE-2024-57986

Mitre link : CVE-2024-57986

CVE.ORG link : CVE-2024-57986


JSON object : View

Products Affected

linux

  • linux_kernel