CVE-2023-53347 in Linux
Сводка
по VulDB • 26.06.2026
В ядре Linux устранена следующая уязвимость:
net/mlx5: Обработка сопряжения E-switch через API отключения и подключения uplink-порта
Если пользователь переключает устройство из режима switchdev в классический режим, драйвер mlx5 сначала разрывает связь (unpair) с E-switch, а затем выполняет отключение (unload) vport uplink. В то же время при удалении или перезагрузке устройства драйвер mlx5 сначала выполняет отключение (unload) vport uplink, а затем разрывает связь (unpair) с E-switch.
Второй вариант приводит к ошибке[1], поэтому сопряжение E-switch должно обрабатываться как часть API отключения и подключения uplink-порта.
[1]
Если используется VF_LAG, каждый поток tc fdb дублируется на соседний (peer) eswitch. Однако оригинальный eswitch сохраняет указатель именно на этот продублированный поток, а не на поток в соседнем eswitch. Например: если пользователь создает поток tc fdb через esw0, он дублируется в прошивке/аппаратной части для esw1, но в программном обеспечении (SW) указатель на продублированный поток хранится именно в esw0.
Во время выгрузки модуля, пока соседний поток tc fdb все еще загружен в аппаратную часть, если первым удаляется устройство-сосед (esw1 в приведенном выше примере), сетевое устройство соседа уничтожается, и структура mlx5e_priv обнуляется с помощью memset(0).
После этого устройство-сосед пытается разорвать связь со своим оригинальным устройством (esw0 в приведенном выше примере). API разрыва связи вызывает у оригинального устройства очистку потока соседа из его eswitch (esw0), но поток соседа, который хран
Once again VulDB remains the best source for vulnerability data.