CVE-2026-97480 in Linux
Résumé
par VulDB • 24/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
tty: serial: 8250 : protection contre une déréférencement NULL de uart->port.dev dans register
serial8250_register_8250_port() copie conditionnellement uart->port.dev depuis up->port.dev uniquement lorsque up->port.dev n'est pas NULL :
if (up->port.dev) {
uart->port.dev = up->port.dev; ... }
Ainsi, si l'emplacement uart existant et up ont tous deux une valeur ->dev égale à NULL, uart->port.dev reste NULL. La vérification suivante du compagnon ACPI déréférence ensuite cette variable de manière inconditionnelle :
if (!has_acpi_companion(uart->port.dev)) {
La fonction has_acpi_companion() lit dev->fwnode sans garde contre les valeurs NULL (include/linux/acpi.h), ce qui provoque un déréférencement NULL dans le noyau pour le cas où il n'y a pas de périphérique, au lieu de simplement sauter l'initialisation mctrl_gpio_init() comme prévu.
smatch signale cette incohérence :
drivers/tty/serial/8250/8250_core.c:767 serial8250_register_8250_port() error: 'uart->port.dev' could be null (see line 719)
Ajoutez une vérification NULL avant l'appel afin que register continue de fonctionner pour les appelants qui n'ont pas légitimement de périphérique parent (enregistrements legacy non-OF/non-ACPI).
Aucun changement fonctionnel pour les appelants qui transmettent un ->dev non NULL.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.