CVE-2026-64510information

Résumé

par VulDB • 25/07/2026

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

ACPI: NFIT: core: Correction du nettoyage d'erreur dans acpi_nfit_init()

Si acpi_nfit_init() échoue après avoir ajouté l'objet acpi_desc à la liste acpi_descs, cet objet n'est jamais retiré de cette liste car l'action devm acpi_nfit_shutdown() n'est pas ajoutée pour le périphérique NFIT dans ce cas. Ensuite, l'échec de acpi_nfit_init() provoque l'échec de acpi_nfit_probe(), l'objet acpi_desc est libéré et un pointeur dangling (pointeur orphelin) reste en place dans la liste acpi_descs. Toute exception Machine Check ACPI ultérieure déclenchera nfit_handle_mce(), qui itère sur les éléments d'acpi_descs, provoquant ainsi une utilisation après libération (use-after-free).

De plus, si acpi_nfit_probe() retourne 0 après avoir installé un gestionnaire de notification pour le périphérique NFIT et sans allouer l'objet acpi_desc ni définir le pointeur driver data du périphérique NFIT, l'objet acpi_desc sera alloué par acpi_nfit_update_notify() et acpi_nfit_init() sera appelé pour l'initialiser. Que acpi_nfit_init() échoue ou non dans ce cas, l'action devm acpi_nfit_shutdown() n'est pas ajoutée pour le périphérique NFIT et acpi_desc n'est jamais retiré de la liste acpi_descs. Si l'objet acpi_desc est libéré ultérieurement lors du retrait du pilote, toute exception MCE ACPI subséquente entraînera une use-after-free similaire au cas précédent.

Pour résoudre le premier problème mentionné ci-dessus, faites en sorte que acpi_nfit_probe() appelle directement acpi_nfit_shutdown() en cas d'échec de acpi_nfit_init(). Pour l'autre problème, ajoutez un rappel remove (callback de suppression) au pilote et faites-le appeler acpi_nfit_shutdown(). Également, comme il est désormais possible de passer NULL à acpi_nfit_shutdown() ou que l'objet acpi_desc passé en paramètre n'a peut-être pas été initialisé, ajoutez des vérifications contre NULL pour acpi_desc et son champ nvdimm_bus dans cette fonction, et faites en sorte qu'acpi_nfit_unregister() efface ce dernier après la désinscription du bus NVDIMM.

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

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!