В ядре Linux устранена следующая уязвимость:
batman-adv: очистить нетегированную VLAN при ошибке регистрации netdev
Когда интерфейс сетки регистрируется, он создает нетегированную структуру.
batadv_meshif_vlan поверх него через уведомитель NETDEV_REGISTER. Но в
этот процесс, другой получатель этого уведомления может наложить вето на
регистрация. Из-за этого вето регистрация netdev будет прервана.
Вызов Register_netdevice() попытается очистить net_device, используя
unregister_netdevice_queue() — который использует .priv_destructor только для
бесплатные частные ресурсы. В этой ситуации .dellink вызываться не будет. Очистка нетегированного batadv_meshif_vlan должна быть выполнена в
деструктор, чтобы избежать утечки этого объекта.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: batman-adv: clean untagged VLAN on netdev registration failure When an mesh interface is registered, it creates an untagged struct batadv_meshif_vlan on top of it via the NETDEV_REGISTER notifier. But in this process, another receiver of this notification can veto the registration. The netdev registration will be aborted because of this veto. The register_netdevice() call will try to clean up the net_device using unregister_netdevice_queue() - which only uses the .priv_destructor to free private resources. In this situation, .dellink will not be called. The cleanup of the untagged batadv_meshif_vlan must thefore be done in the destructor to avoid a leak of this object.