Katalog CVE

CVE-2026-97930

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux sterownik ALSA usbusx2y ma niezgodność rozmiaru tablicy in04_last (char[24]) z buforem in04_buf alokowanym jako 21 bajtów (sizeof(struct us428_ctls)). W funkcji i_usx2y_in04_int() kopiowane jest 24 bajty z 21-bajtowej alokacji, co powoduje odczyt 3 bajtów poza końcem obiektu. Poprawka wprowadza stałą USX2Y_IN04_SIZE i używa jej spójnie.

Ocena ryzyka

Odczyt poza granicami alokacji może ujawnić dane z pamięci jądra lub spowodować awarię systemu. Wymaga podłączenia odpowiedniego urządzenia USB audio.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę. Unikaj używania nieznanych lub niezaufanych urządzeń USB audio opartych na tym sterowniku.

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: ALSA: usbusx2y: fix in04_last array size mismatch with in04_buf The in04_last array in struct usx2ydev is declared as char[24], but in04_buf is allocated as sizeof(struct us428_ctls) which is 21 bytes. In i_usx2y_in04_int(), when ctl_snapshot_last == -2 (initialization path): memcpy(usx2y->in04_last, usx2y->in04_buf, sizeof(usx2y->in04_last)); This copies 24 bytes from a 21-byte slab allocation, reading 3 bytes past the end of the source object. Introduce a USX2Y_IN04_SIZE constant defined as sizeof(struct us428_ctls) and use it consistently for the in04_last array, the in04_buf allocation, the URB transfer length, and the comparison loop, replacing the bare 24 and 21 literals throughout.

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