Katalog CVE

CVE-2026-93120

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux funkcja os_desc_qw_sign_show() sterownika USB gadget configfs przekazywała OS_STRING_QW_SIGN_LEN (14) jako długość wejściową do utf16s_to_utf8s(), mimo że argument ten liczy jednostki kodu UTF-16, a tablica qw_sign[] ma tylko 7 jednostek. Gdy sygnatura wypełnia tablicę bez terminatora NUL, konwersja odczytuje do 7 jednostek poza koniec tablicy, ujawniając sąsiednie bajty struktury gadget_info przez atrybut configfs.

Ocena ryzyka

Podatność umożliwia odczyt poza granicami bufora i wyciek danych z pamięci jądra przez atrybut configfs. Może to ujawnić informacje poufne lub ułatwić dalsze ataki na system.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę dla sterownika USB gadget configfs. Ogranicz dostęp do atrybutów configfs do uprawnionych użytkowników.

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: usb: gadget: configfs: fix out-of-bounds read of qw_sign os_desc_qw_sign_show() passes OS_STRING_QW_SIGN_LEN as the input length to utf16s_to_utf8s(), but that argument counts UTF-16 code units while OS_STRING_QW_SIGN_LEN (14) is the byte size of qw_sign[]. The array holds only OS_STRING_QW_SIGN_LEN / 2 (7) code units, so the conversion reads up to 7 units (14 bytes) past the end of qw_sign[] into the following members of struct gadget_info when the stored signature fills the array without a NUL terminator, exposing those bytes through the configfs attribute. The store path halves the count for its input bound but passes the full byte count as the utf8s_to_utf16s() output limit; use the destination code-unit count in both directions.

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