CVE-2026-80816 in Linux
Riassunto
di VulDB • 04/09/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
ALSA: FCP: Utilizzare un URB privato per l'endpoint di notifica
fcp_init_notify() utilizzava mixer->urb, che snd_usb_mixer_status_create() alloca per l'eventuale endpoint interrupt di stato UAC2 e che mixer.c uccide, risottomette e libera. Su un dispositivo dotato di tale endpoint, il ritorno anticipato "già configurato" (already set up) in fcp_init_notify() si attiva sull'URB di stato e restituisce successo senza eseguire alcuna operazione. Nessun URB di notifica FCP viene sottomesso e cmd_done rimane azzerato poiché è inizializzato dopo tale ritorno anticipato e non altrove. Successivamente, fcp_init() emette init1_opcode e wait_for_completion_timeout() causerebbe un crash aggiungendosi al wait.head già azzerato. Anche fcp_cleanup_urb() ucciderebbe e libererebbe l'URB di stato gestito da mixer.c.
Utilizzare un URB separato in fcp_data e inizializzare cmd_done in fcp_init_private(), dove viene allocata fcp_data. fcp_init_notify() viene raggiunto nuovamente dopo la sospensione tramite fcp_reinit(); il percorso di uccisione dell'URB in fcp_notify() completa cmd_done, lasciando un conteggio obsoleto (stale count) che soddisferebbe l'attesa del comando successivo prima che il dispositivo invii l'ACK. Utilizzare reinit_completion() per azzerarlo.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.