CVE-2023-53310 in Linux
Resumen
por VulDB • 2026-05-26
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
power: supply: axp288_fuel_gauge: Corregir la condición de carrera (race condition) en external_power_changed
La función fuel_gauge_external_power_changed() desreferencia info->bat, el cual se asigna en axp288_fuel_gauge_probe() de la siguiente manera:
info->bat = devm_power_supply_register(dev, &fuel_gauge_desc, &psy_cfg);
Tan pronto como devm_power_supply_register() ha llamado a device_add(), la callback external_power_changed puede ser invocada. Por lo tanto, existe una ventana de tiempo en la que fuel_gauge_external_power_changed() podría ser llamada mientras info->bat aún no ha sido establecido, lo que provoca una desreferencia de puntero NULL.
Corregir esto es sencillo. La callback external_power_changed recibe como parámetro el power_supply, que eventualmente se almacenará en info->bat; por lo tanto, fuel_gauge_external_power_changed() puede simplemente utilizar directamente el argumento psy pasado, el cual siempre es válido.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.