Skip to main content
← All vulnerabilities
CVE-2026-97930

ALSA: usbusx2y: fix in04_last array size mismatch with in04_buf

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.15.222, 6.1.189, 6.6.158, 6.12.111, 6.18.53, and 1 more
None on Exploit-DB, Metasploit or GitHub

Summary

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.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in e75e4b0e647137f4c9f6dee4a7ef5b7b09e16f57; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 869fb83c072e884b80d93eab498e6040ffb010ba; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in d170cfbe38c8817ac787f605655546a6d343017d; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 229cab526580f82839ae8e4e379753c8cf16952e; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 381495b5b3da12d714e53d9d12d955b13fe26eac; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in b5753bdfd909f7f095fb464d67802b5e52cbadbf; From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 · fixed in 861111a14740e12c36d363e9830f8daa734279c9

  • Linux Linux

    2.6.12

  • KernelLinux

    From 2.6.12 · fixed in 5.15.222; From 5.16.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.111; From 6.13.0 · fixed in 6.18.53; From 6.19.0 · fixed in 7.2.7

References 7

git.kernel.org