CVE Catalog

CVE-2026-93053

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, the speakup: keyhelp driver's help_init() builds letter_offsets[] by using the first byte of each function name as an index via `(start & 31) - 1`. If function names are overridden from sysfs (root) with a name starting outside [a–z], the index underflows or exceeds the array, leading to OOB write. The fix checks the first letter in help_init() and returns an error if it is not in the [a–z] range.

Risk Assessment

Out-of-bounds write can lead to memory corruption, system crash, or potential arbitrary code execution, though it requires root privileges to override function names.

Recommendation

It is recommended to update the Linux kernel to a version containing the fix that validates the first letter of the function name.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: speakup: keyhelp: guard letter_offsets possible out-of-range indexing help_init() builds letter_offsets[] by using the first byte of each function name as an index via `(start & 31) - 1`. If function_names are overridden from sysfs (root) with a name starting outside [a–z], the index underflows or exceeds the array, leading to OOB write. Function names can be overridden with the following commands as root: modprobe speakup_soft echo "0 _bad" > /sys/accessibility/speakup/i18n/function_names # then press Insert+2 on /dev/tty This fix checks the first letter in help_init(), and if it is not in the [a–z] range the function returns an error to the caller. Eventually this error is propagated to drivers/accessibility/speakup/main.c:2217, which causes a bleep sound.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS