CVE Catalog

CVE-2026-97930

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, the ALSA usbusx2y driver has a size mismatch between the in04_last array (char[24]) and the in04_buf buffer allocated as 21 bytes (sizeof(struct us428_ctls)). In i_usx2y_in04_int(), 24 bytes are copied from a 21-byte allocation, reading 3 bytes past the end of the object. The fix introduces a USX2Y_IN04_SIZE constant and uses it consistently.

Risk Assessment

An out-of-bounds read can leak kernel memory data or cause a system crash. It requires connecting a relevant USB audio device.

Recommendation

Update the Linux kernel to a version containing the fix. Avoid using unknown or untrusted USB audio devices based on this driver.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

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.

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