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