In the Linux kernel, the following vulnerability has been resolved:
ALSA: usb-audio: fix use-after-free in umptoendpoint()
createmidi2ump() registers a card-owned sndumpendpoint and stores a back-pointer to its per-interface sndusbmidi2ump object in ump->privatedata, but it never installs an ump->private_free hook and never clears that pointer.
If a later step of sndusbmidiv2create() fails, its error path calls freeallmidi2umps(), which kfree()s the sndusbmidi2ump object while the already-registered endpoint keeps pointing at it. The created /dev/snd/umpCD node stays exposed, so the first operation of any UMP open, umptoendpoint(), dereferences the dangling ump->private_data and reads rmidi->eps[dir] out of freed memory.
A malicious USB MIDI 2.0 device that makes creation fail after the endpoint is registered can thus trigger a slab use-after-free read on a subsequent open of the UMP node.
Clear the endpoint's back-pointer before freeing the object, and let umptoendpoint() tolerate a NULL private_data so the open/close/trigger callbacks fail cleanly (their callers already handle a NULL endpoint) instead of dereferencing a stale pointer.
Discovered by XBOW, triaged by Baul Lee baul.lee@xbow.com
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74501.json"
}