CVE-2026-74683: Input: evdev - sanitize event type index when fetching event masks

Greg Kroah-Hartman <[email protected]>
Newsgroups org.kernel.vger.linux-cve-announce
Message-ID <2026082232-CVE-2026-74683-a20b@gregkh>
From: Greg Kroah-Hartman <[email protected]>

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

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

Input: evdev - sanitize event type index when fetching event masks

The user-supplied event type index passed to EVIOCGMASK / EVIOCSMASK
ioctls is used to index the static counts array in evdev_get_mask_cnt()
and client evmasks array in evdev_get_mask().

While the event type is architecturally bounded by EV_CNT, speculative
execution may mispredict bounds checks and perform out-of-bounds loads.

Sanitize the event type index in evdev_get_mask_cnt() branchlessly using
array_index_mask_nospec(). This clamps the index to 0 for safe array
access and forces the returned count to 0 speculatively when the index
is out of bounds.

We do not need additional array_index_nospec() calls in evdev_get_mask()
because evdev_get_mask_cnt() speculatively forces the count (and
resulting xfer_size) to 0 for out-of-bounds types, preventing any
speculative memory access to client evmasks array.

The Linux kernel CVE team has assigned CVE-2026-74683 to this issue.


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

	Fixed in 5.10.265 with commit c79b08d8fa230871a3634e34a66e591ac2d084ef
	Fixed in 5.15.216 with commit f27fa9b39f925d26e034a1f382cb45523138f4ae
	Fixed in 6.1.183 with commit f3fc329acad9a71b3c077237cbac20670d2358c8
	Fixed in 6.6.152 with commit 5db341189bb7ff041d570dbe36ecca7e32913927
	Fixed in 6.12.104 with commit 433913b4a92214d76e9f0c03ad9128fec943d5f8
	Fixed in 6.18.45 with commit 4034ef247a9dde3f56660b01f0c3280dac6b1274
	Fixed in 7.1.9 with commit 810e1883d4815f29c30d900ad7333d03cc2515d1
	Fixed in 7.2 with commit 3abd29c61d2ef37c4102cf755b18be53bb9dbea6

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-2026-74683
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/input/evdev.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/c79b08d8fa230871a3634e34a66e591ac2d084ef
	https://git.kernel.org/stable/c/f27fa9b39f925d26e034a1f382cb45523138f4ae
	https://git.kernel.org/stable/c/f3fc329acad9a71b3c077237cbac20670d2358c8
	https://git.kernel.org/stable/c/5db341189bb7ff041d570dbe36ecca7e32913927
	https://git.kernel.org/stable/c/433913b4a92214d76e9f0c03ad9128fec943d5f8
	https://git.kernel.org/stable/c/4034ef247a9dde3f56660b01f0c3280dac6b1274
	https://git.kernel.org/stable/c/810e1883d4815f29c30d900ad7333d03cc2515d1
	https://git.kernel.org/stable/c/3abd29c61d2ef37c4102cf755b18be53bb9dbea6
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.