В ядре Linux устранена следующая уязвимость:
мощность: источник питания: bq256xx: слить usb_work перед освобождением зарядного устройства
Уведомитель USB-PHY ставит в очередь usb_work, обработчик которого вызывает
power_supply_changed (bq-> зарядное устройство). Действие сброса devm только отменяет регистрацию
уведомитель и был зарегистрирован до подачи питания, поэтому devm освобождает
bq->зарядное устройство на размотке до начала действия; USB_work, все еще находящийся в очереди, может
затем разыменуйте его. Зарегистрируйте действие сброса после подачи питания, чтобы отменить регистрацию.
уведомители и сливают usb_work до того, как будут выпущены поставки.
Инициализируйте usb_work и получите ссылки PHY перед регистрацией.
уведомители, поэтому работник не может работать до того, как появятся запасы. Найдено статическим анализом.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: power: supply: bq256xx: drain usb_work before freeing the charger The USB-PHY notifier queues usb_work, whose handler calls power_supply_changed(bq->charger). The reset devm action only unregisters the notifier and was registered before the power supplies, so devm frees bq->charger on unwind before the action runs; a usb_work still queued can then dereference it. Register the reset action after the power supplies, so it unregisters the notifiers and drains usb_work before the supplies are released. Initialize usb_work and obtain the PHY references before registering the notifiers, so the worker cannot run before the supplies exist. Found by static analysis.