Description
In the Linux kernel, the following vulnerability has been resolved: ALSA: usb-audio: Bound MIDI endpoint descriptor scans snd_usbmidi_get_ms_info() validates the internal MIDIStreaming endpoint descriptor size before using baAssocJackID[], but the descriptor walker can still return a class-specific endpoint descriptor whose bLength exceeds the remaining bytes in the endpoint-extra scan. That leaves later flexible-array reads bounded by bLength, but not by the remaining bytes in the endpoint-extra scan. Stop walking when bLength is zero or extends past the remaining endpoint-extra scan.
Affected products
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – e2f1260a056eb3215c13c48c5378f3e4112dc3af
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – c65b137d351e21cbc5630e73ef0eb1e1d75f5b20
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – 728ab0c72e49ca27185067984cd565425eb69b2e
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – 3d3b2b01a3e73828e201ece96f863e7a3e0cdc6e
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – a0226560540c16717efcceaf15c862cf115b01d3
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – 09141583bd97f4bbd7358e29fd138fe798467cdb
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – c59159ce10e75b568cd0d4b29efcb0fb0ddecc94
- Linux / Linux5c6cd7021a05a02fcf37f360592d7c18d4d807fb – d6854daa67be623860f4e1873fd3d3c275aba4ed
- Linux / Linux9e0c71f2f633b0442661966228827d1a33df485f – 9e0c71f2f633b0442661966228827d1a33df485f
- Linux / Linux0868bc5654c07628c421547f0821650a8c2cb8f3 – 0868bc5654c07628c421547f0821650a8c2cb8f3
- Linux / Linux78483c1c7741ffa72991d93d19a75bfdcc2cbf57 – 78483c1c7741ffa72991d93d19a75bfdcc2cbf57
- Linux / Linux65d95462001c6ccd9bc9499c1fc9a90eca9de496 – 65d95462001c6ccd9bc9499c1fc9a90eca9de496
- Linux / Linuxca767cf0152d18fc299cde85b18d1f46ac21e1ba – ca767cf0152d18fc299cde85b18d1f46ac21e1ba
- Linux / Linux4.4.238 – 4.5
- Linux / Linux4.9.238 – 4.10
- Linux / Linux4.14.200 – 4.15
- Linux / Linux4.19.149 – 4.20
- Linux / Linux5.4.69 – 5.5
- Linux / Linux5.7 – 5.7
- Linux / Linux0 – 5.7
- Linux / Linux5.10.258 – 5.10.*
- Linux / Linux5.15.209 – 5.15.*
- Linux / Linux6.1.175 – 6.1.*
- Linux / Linux6.6.141 – 6.6.*
- Linux / Linux6.12.91 – 6.12.*
- Linux / Linux6.18.33 – 6.18.*
- Linux / Linux7.0.10 – 7.0.*
- Linux / Linux7.1 – *
References
- MISChttps://git.kernel.org/stable/c/e2f1260a056eb3215c13c48c5378f3e4112dc3af
- MISChttps://git.kernel.org/stable/c/c65b137d351e21cbc5630e73ef0eb1e1d75f5b20
- MISChttps://git.kernel.org/stable/c/728ab0c72e49ca27185067984cd565425eb69b2e
- MISChttps://git.kernel.org/stable/c/3d3b2b01a3e73828e201ece96f863e7a3e0cdc6e
- MISChttps://git.kernel.org/stable/c/a0226560540c16717efcceaf15c862cf115b01d3
- MISChttps://git.kernel.org/stable/c/09141583bd97f4bbd7358e29fd138fe798467cdb
- MISChttps://git.kernel.org/stable/c/c59159ce10e75b568cd0d4b29efcb0fb0ddecc94
- MISChttps://git.kernel.org/stable/c/d6854daa67be623860f4e1873fd3d3c275aba4ed