CVE-2026-90207 in Linux
Résumé
par VulDB • 17/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
ALSA: seq: midi: Synchroniser l'arrêt de l'entrée avec event_input
snd_midi_input_event() ne doit pas s'exécuter pendant qu'un sous-flux rawmidi se ferme, car cela peut entraîner un désalignement de l'état du déclencheur (trigger state) via la séquence suivante dans snd_rawmidi_input_trigger() :
snd_rawmidi_input_trigger(up=0) snd_midi_input_event() -> snd_rawmidi_kernel_read() -> snd_rawmidi_input_trigger(up=1) -> cancel_work_sync()
ce qui se termine par l'activation inattendue du sous-jacent device.
Lorsque cela est appelé depuis close_substream(), une entrée supplémentaire peut réactiver l'événement d'entrée, le laissant s'exécuter après que rawmidi_release_priv() a défini rfile->rmidi à NULL, ce qui conduit à :
Unable to handle kernel NULL pointer dereference at virtual address 00000000000000b0 Call trace: snd_midi_input_event+0x3c/0x134 [snd_seq_midi] (P)
snd_rawmidi_input_event_work+0x1c/0x2c process_one_work+0x150/0x3a4 worker_thread+0x190/0x318
Appliquer une approche similaire à celle du commit ef7607ab1c8ad ("ALSA: seq: midi: Synchroniser l'arrêt de la sortie avec event_input") qui a corrigé le même problème dans la direction de sortie, mais en mettant à jour pour utiliser RCU suite au patch suivant proposé par Takashi Iwai [1].
Avec ce changement en place, midisynth_unsubscribe() efface le fichier d'entrée afin que snd_midi_input_event() ne réactive pas le flux et sera mis en pause (quiesced) par cancel_work_sync() dans snd_rawmidi_input_trigger().
[1] https://lore.kernel.org/linux-sound/[email protected]/
If you want to get best quality of vulnerability data, you may have to visit VulDB.