Description
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_uac1_legacy: validate control request size f_audio_complete() copies req->length bytes into a 4-byte stack variable: u32 data = 0; memcpy(&data, req->buf, req->length); req->length is derived from the host-controlled USB request path, which can lead to a stack out-of-bounds write. Validate req->actual against the expected payload size for the supported control selectors and decode only the expected amount of data. This avoids copying a host-influenced length into a fixed-size stack object.
Product status
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 557d1d4e862eccd0b74cc377b66de3e1e8d49605
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 21b11e8581285c6f10ef43d05df349d445f24273
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 0d41772d98dcaf6c17e875b7d0ea0154ae1191ee
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before c6da4fed7537aec19880c24f6c3a95065adb1406
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before be2d32f0c3fe333d14c0a9ca90328dacbc3e06b8
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 8e5eb1d6e6a3d7bbea9c92132d0cda5793176426
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 26304d124e7f0383f8fe1168b5801a0ac7e16b1c
c6994e6f067cf0fc4c6cca3d164018b1150916f8 (git) before 6e0e34d85cd46ceb37d16054e97a373a32770f6c
2.6.31
Any version before 2.6.31
5.10.253 (semver)
5.15.203 (semver)
6.1.168 (semver)
6.6.134 (semver)
6.12.81 (semver)
6.18.22 (semver)
6.19.12 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/557d1d4e862eccd0b74cc377b66de3e1e8d49605
git.kernel.org/...c/21b11e8581285c6f10ef43d05df349d445f24273
git.kernel.org/...c/0d41772d98dcaf6c17e875b7d0ea0154ae1191ee
git.kernel.org/...c/c6da4fed7537aec19880c24f6c3a95065adb1406
git.kernel.org/...c/be2d32f0c3fe333d14c0a9ca90328dacbc3e06b8
git.kernel.org/...c/8e5eb1d6e6a3d7bbea9c92132d0cda5793176426
git.kernel.org/...c/26304d124e7f0383f8fe1168b5801a0ac7e16b1c
git.kernel.org/...c/6e0e34d85cd46ceb37d16054e97a373a32770f6c