Vulnerabilidad en kernel de Linux (CVE-2024-57992)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
27/02/2025
Última modificación:
27/02/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: wifi: wilc1000: anular el registro de wiphy solo si se ha registrado Hay una ruta de error específica en las funciones de sonda en los controladores wilc (tanto sdio como spi) que puede provocar un pánico del kernel, como este, por ejemplo, cuando se usa SPI: No se puede manejar la solicitud de paginación del kernel en la dirección virtual 9f000000 cuando se lee [9f000000] *pgd=00000000 Internal error: Oops: 5 [#1] ARM Modules linked in: wilc1000_spi(+) crc_itu_t crc7 wilc1000 cfg80211 bluetooth ecdh_generic ecc CPU: 0 UID: 0 PID: 106 Comm: modprobe Not tainted 6.13.0-rc3+ #22 Hardware name: Atmel SAMA5 PC is at wiphy_unregister+0x244/0xc40 [cfg80211] LR is at wiphy_unregister+0x1c0/0xc40 [cfg80211] [...] wiphy_unregister [cfg80211] from wilc_netdev_cleanup+0x380/0x494 [wilc1000] wilc_netdev_cleanup [wilc1000] from wilc_bus_probe+0x360/0x834 [wilc1000_spi] wilc_bus_probe [wilc1000_spi] from spi_probe+0x15c/0x1d4 spi_probe from really_probe+0x270/0xb2c really_probe from __driver_probe_device+0x1dc/0x4e8 __driver_probe_device from driver_probe_device+0x5c/0x140 driver_probe_device from __driver_attach+0x220/0x540 __driver_attach from bus_for_each_dev+0x13c/0x1a8 bus_for_each_dev from bus_add_driver+0x2a0/0x6a4 bus_add_driver from driver_register+0x27c/0x51c driver_register from do_one_initcall+0xf8/0x564 do_one_initcall from do_init_module+0x2e4/0x82c do_init_module from load_module+0x59a0/0x70c4 load_module from init_module_from_file+0x100/0x148 init_module_from_file from sys_finit_module+0x2fc/0x924 sys_finit_module from ret_fast_syscall+0x0/0x1c El problema se puede reproducir fácilmente, por ejemplo, al no conectar correctamente un dispositivo wilc a través de SPI (y, por lo tanto, hacer que no responda a los primeros comandos SPI). Se debe a un cambio reciente que desacopla la asignación de wiphy del registro de wiphy, sin embargo, wilc_netdev_cleanup no se ha actualizado en consecuencia, lo que permite que posiblemente llame a la anulación del registro de wiphy en un wiphy que nunca se ha registrado. Corrija este fallo moviendo wiphy_unregister/wiphy_free fuera de wilc_netdev_cleanup y ajustando las rutas de error en ambos controladores