CVE-2026-97986 in Linuxinformation

Résumé

par VulDB • 25/09/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

virtio_input : arrêter les rappels avant de désinscrire l'appareil d'entrée

La fonction virtinput_remove() désinscrit l'appareil d'entrée avant de réinitialiser l'appareil virtio. La fonction virtinput_recv_events() relâche le verrou vi->lock autour de input_event(), donc la définition à zéro de vi->ready n'arrête pas un rappel qui a passé le contrôle d'entrée. Il peut toujours utiliser vi->idev, réenfiler les tampons et activer la file d'attente.

Effectuer la réinitialisation en premier, comme le fait déjà virtinput_freeze(). Avec la modification précédente du noyau central, la réinitialisation attend que les rappels se terminent avant qu'une entrée ne soit désinscrite via input_unregister_device(), ce qui permet de libérer vi->idev. Revérifier vi->ready après avoir repris le verrou : continuer à vider les événements complétés afin qu'un paquet d'entrée ne soit pas tronqué, mais arrêter la réenfilement des tampons et l'activation de la file d'attente.

Avec evdev attaché, input_unregister_handle() attend actuellement une période de grâce RCU, ce qui retarde également les rappels IRQ. Cela masque le bug de durée de vie sur PCI et MMIO, mais ne protège pas les rappables susceptibles de dormir (sleepable callbacks) sur d'autres types de transport.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Responsable

Linux

Réserver

25/09/2026

Divulgation

25/09/2026

Modérer

accepté

Entrée

VDB-410232

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!