В ядре Linux устранена следующая уязвимость:
ALSA: us144mkii: capture_urb_complete: избыточный usb_anchor_urb повреждает список привязок при каждой повторной отправке
В capture_urb_complete() usb_anchor_urb() вызывается каждый раз.
обратный вызов завершения, но URB уже привязан к
первоначальная отправка в tascam_trigger_start(). Каждый лишний вызов
повреждает двусвязный список привязки и раздувает URB
рефсчет. Когда usb_kill_anchored_urbs() проходит по списку во время
остановка/приостановка/отключение потока, поврежденный список приводит к
использовать после бесплатно.
Удалите лишний usb_anchor_urb() из пути повторной отправки.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: ALSA: us144mkii: capture_urb_complete: redundant usb_anchor_urb corrupts anchor list on each resubmission In capture_urb_complete(), usb_anchor_urb() is called on every completion callback, but the URB is already anchored from the initial submission in tascam_trigger_start(). Each redundant call corrupts the anchor's doubly-linked list and inflates the URB refcount. When usb_kill_anchored_urbs() traverses the list during stream stop / suspend / disconnect, the corrupted list leads to use-after-free. Remove the redundant usb_anchor_urb() from the resubmit path.