Ad

CVE-2026-74478

CRITICAL CVSS 3.1: 9,8 EPSS 0.57%
Обновлено 19 августа 2026
Linux
Параметр Значение
CVSS 9,8 (CRITICAL)
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: хм: вектор: исправлено использование после освобождения в Vector_mmsg_rx() Когда Vector_mmsg_rx() отбрасывает пакет, наложение заголовка которого не удалось verify_header() освобождает skb и продолжает цикл: если (header_check <0) { dev_kfree_skb_irq (скб); vp->estats.rx_encaps_errors++; продолжать; } Обычные пути и пути коротких пакетов проходят в нижнюю часть тело цикла, которое очищает занятый слот и перемещает курсоры: (*skbuff_vector) = NULL; ммсг_вектор++; skbuff_vector++; Путь Verified_header() < 0 пропускает этот путь через continue, поэтому освобожденный skb остается в skbuff_vector[] и курсоры не перемещаются. Следующий итерация считывает тот же слот, получает освобожденный skb и освобождает его снова, создание потери счетчика ссылок/использования после освобождения в пути RX. Прежде чем продолжить, выбросьте слот так же, как и другие пути.

Это затрагивает только те транспорты, у которыхverify_header() может возвращать отрицательное значение: GRE и L2TPv3 делают это при несовпадении идентификатора файла cookie/сеанса (raw/tap — нет), поэтому любой узел на таком транспорте может запустить его без аутентификации.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: um: vector: fix use-after-free in vector_mmsg_rx() When vector_mmsg_rx() discards a packet whose overlay header fails verify_header(), it frees the skb and continues the loop: if (header_check < 0) { dev_kfree_skb_irq(skb); vp->estats.rx_encaps_errors++; continue; } The normal and short-packet paths fall through to the bottom of the loop body, which clears the consumed slot and advances the cursors: (*skbuff_vector) = NULL; mmsg_vector++; skbuff_vector++; The verify_header() < 0 path skips that via continue, so the freed skb is left in skbuff_vector[] and the cursors do not advance. The next iteration reads the same slot, gets the freed skb, and frees it again, producing a refcount underflow / use-after-free in the RX path. Discard the slot the same way the other paths do before continuing. Only transports whose verify_header() can return negative are affected: GRE and L2TPv3 do so on a cookie/session-id mismatch (raw/tap do not), so any peer on such a transport can trigger it without authentication.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Высокое
Полная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1