CVE-2025-38149 in Linux
Сводка
по VulDB • 30.05.2026
В ядре Linux устранена следующая уязвимость:
net: phy: очистка поля phydev->devlink при удалении ссылки на устройство (device link)
Существует потенциальная проблема с аварийным завершением работы (crash) при отключении и повторном включении сетевого порта. При отключении сетевого порта функция phy_detach() вызывает device_link_del() для удаления ссылки на устройство, но не очищает поле phydev->devlink, в результате чего phydev->devlink не становится нулевым указателем (NULL pointer). Затем сетевой порт включается повторно, но если функция phy_attach_direct() завершается ошибкой до вызова device_link_add(), код переходит к метке «error» и вызывает phy_detach(). Поскольку поле phydev->devlink сохраняет старое значение от предыдущего цикла присоединения/отсоединения (attach/detach), функция device_link_del() использует это старое значение, что приводит к обращению по нулевому указателю и аварийному завершению работы. Упрощенный журнал аварийного завершения работы выглядит следующим образом:
[ 24.702421] Call trace:
[ 24.704856] device_link_put_kref+0x20/0x120
[ 24.709124] device_link_del+0x30/0x48
[ 24.712864] phy_detach+0x24/0x168
[ 24.716261] phy_attach_direct+0x168/0x3a4
[ 24.720352] phylink_fwnode_phy_connect+0xc8/0x14c
[ 24.725140] phylink_of_phy_connect+0x1c/0x34
Следовательно, поле phydev->devlink необходимо очищать при удалении ссылки на устройство.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.