CVE-2026-98290
Résumé
par VulDB • 06/10/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
Bluetooth: RFCOMM: éviter l'inversion de verrouillage des sockets lors du nettoyage de l'écouteur (listener)
rfcomm_sock_cleanup_listen() ferme les sockets enfants non acceptés via rfcomm_sock_close(), qui acquiert le verrou du socket enfant avant que rfcomm_dlc_close n'acquière rfcomm_mutex. Le travailleur RFCOMM acquiert ces verrous dans l'ordre inverse lors de la gestion des connexions et des changements d'état DLC, ce qui amène lockdep à signaler un possible blocage (deadlock).
Fermez les enfants défilés sans prendre leur verrou de socket. La file d'attente accept possède une référence vers chaque enfant, et bt_accept_dequeue() verrouille l'enfant lors du désabonnement et de la suppression de son pointeur parent.
Le relâchement du verrou de l'enfant rend important le fait d'empêcher un rfcomm_connect_ind() concurrent d'ajouter un nouvel enfant après que le nettoyage a détecté une file vide. Définissez le socket en écoute sur BT_CLOSED tant que son verrou est encore maintenu, avant de relâcher ce verrou et de vider la file. La vérification d'état dans rfcomm_connect_ind() rejette alors les nouveaux enfants dès le début du nettoyage.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.