Katalog CVE

CVE-2026-93053

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w sterowniku speakup: keyhelp funkcja help_init() buduje tablicę letter_offsets[] używając pierwszego bajtu każdej nazwy funkcji jako indeksu przez `(start & 31) - 1`. Jeśli nazwy funkcji zostaną nadpisane z sysfs (przez root) nazwą zaczynającą się poza zakresem [a–z], indeks może być ujemny lub przekroczyć rozmiar tablicy, prowadząc do zapisu poza zakresem. Poprawka sprawdza pierwszą literę w help_init() i zwraca błąd, jeśli nie jest w zakresie [a–z].

Ocena ryzyka

Zapis poza zakresem może prowadzić do uszkodzenia pamięci, awarii systemu lub potencjalnego wykonania dowolnego kodu, choć wymaga uprawnień roota do nadpisania nazw funkcji.

Rekomendacja

Zaleca się aktualizację jądra Linux do wersji zawierającej poprawkę walidującą pierwszą literę nazwy funkcji.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS