{"id":"CVE-2026-74502","state":"PUBLISHED","title":"ALSA: ump: fix double free of out_cvts on rawmidi error","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: ump: fix double free of out_cvts on rawmidi error\n\nsnd_ump_attach_legacy_rawmidi() allocates the legacy conversion array\nump->out_cvts and, on the snd_rawmidi_new() error path, frees it with\nkfree() but leaves ump->out_cvts pointing at the freed memory.  When the\nendpoint is later torn down, snd_ump_endpoint_free() frees ump->out_cvts\na second time, resulting in a double free.\n\nThe host snd-usb-audio driver attaches the legacy rawmidi for any USB\nMIDI 2.0 (UMP) device, so a device that makes snd_rawmidi_new() fail\nreaches this path on enumeration.\n\nClear ump->out_cvts after freeing it on the error path so it is not\nfreed again during teardown.\n\nDiscovered by XBOW, triaged by Baul Lee <baul.lee@xbow.com>","publishedAt":"2026-08-15T12:27:27.586Z","updatedAt":"2026-08-17T05:20:40.831Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"e84d2e53a05c78a04d1343eeb0f31a79456e79fc","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"3302aaeac4f7ee6b775850db21d5f61064ce70ad","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"032746c2dd9a4ea0774b04ac8a29e2ea628f106e","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"c57001f55f97ef856fb6527e376c5c4a056a53a4","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"70c977815af0d997feb2d0c5d284d55689bf7051","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/ump.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.5","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.5","versionType":"semver"},{"version":"6.6.151","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.103","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.44","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.8","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/ump.c"]}],"references":["https://git.kernel.org/stable/c/e84d2e53a05c78a04d1343eeb0f31a79456e79fc","https://git.kernel.org/stable/c/3302aaeac4f7ee6b775850db21d5f61064ce70ad","https://git.kernel.org/stable/c/032746c2dd9a4ea0774b04ac8a29e2ea628f106e","https://git.kernel.org/stable/c/c57001f55f97ef856fb6527e376c5c4a056a53a4","https://git.kernel.org/stable/c/70c977815af0d997feb2d0c5d284d55689bf7051"],"weaknesses":[],"ingestedAt":"2026-10-29T20:12:58.252Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/74xxx/CVE-2026-74502.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-74502","state":"PUBLISHED","datePublished":"2026-08-15T12:27:27.586Z","dateUpdated":"2026-08-17T05:20:40.831Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-08-15T05:44:03.907Z"},"containers":{"cna":{"title":"ALSA: ump: fix double free of out_cvts on rawmidi error","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: ump: fix double free of out_cvts on rawmidi error\n\nsnd_ump_attach_legacy_rawmidi() allocates the legacy conversion array\nump->out_cvts and, on the snd_rawmidi_new() error path, frees it with\nkfree() but leaves ump->out_cvts pointing at the freed memory.  When the\nendpoint is later torn down, snd_ump_endpoint_free() frees ump->out_cvts\na second time, resulting in a double free.\n\nThe host snd-usb-audio driver attaches the legacy rawmidi for any USB\nMIDI 2.0 (UMP) device, so a device that makes snd_rawmidi_new() fail\nreaches this path on enumeration.\n\nClear ump->out_cvts after freeing it on the error path so it is not\nfreed again during teardown.\n\nDiscovered by XBOW, triaged by Baul Lee <baul.lee@xbow.com>"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"e84d2e53a05c78a04d1343eeb0f31a79456e79fc","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"3302aaeac4f7ee6b775850db21d5f61064ce70ad","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"032746c2dd9a4ea0774b04ac8a29e2ea628f106e","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"c57001f55f97ef856fb6527e376c5c4a056a53a4","versionType":"git"},{"version":"33cd7630782df2230529c3e8f1a6d0ae9cd6ab49","status":"affected","lessThan":"70c977815af0d997feb2d0c5d284d55689bf7051","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/ump.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.5","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.5","versionType":"semver"},{"version":"6.6.151","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.103","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.44","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.8","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/ump.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/e84d2e53a05c78a04d1343eeb0f31a79456e79fc"},{"url":"https://git.kernel.org/stable/c/3302aaeac4f7ee6b775850db21d5f61064ce70ad"},{"url":"https://git.kernel.org/stable/c/032746c2dd9a4ea0774b04ac8a29e2ea628f106e"},{"url":"https://git.kernel.org/stable/c/c57001f55f97ef856fb6527e376c5c4a056a53a4"},{"url":"https://git.kernel.org/stable/c/70c977815af0d997feb2d0c5d284d55689bf7051"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-17T05:20:40.831Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5","versionEndExcluding":"6.6.151"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5","versionEndExcluding":"6.12.103"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5","versionEndExcluding":"6.18.44"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5","versionEndExcluding":"7.1.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5","versionEndExcluding":"7.2"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}