CVE-2026-89563 in LinuxИнформация

Сводка

по VulDB • 12.09.2026

В ядре Linux была устранена следующая уязвимость:

ip6_tunnel: использование функции skb_cow_head() в ip6_tnl_xmit()

Функция ip6_tnl_xmit() может нуждаться в увеличении заголовочного пространства (headroom) перед тем, как добавить внешний IPv6 и дополнительные инкапсулирующие заголовки. В настоящее время это осуществляется с помощью skb_realloc_headroom(), после чего происходит копирование права собственности на пакет из skb->sk, потребление исходного пакета (skb), а затем продолжение обработки с использованием замененного пакета, который хранится только в локальной переменной.

Это безопасно только в том случае, если вспомогательная функция не может завершиться ошибкой впоследствии. Однако эта вспомогательная функция все еще имеет выходы с сообщением об ошибке после перераспределения памяти. Туннели collect_md отклоняют инкапсуляцию типа NONE (кроме NONE) после замены, а ip6_tnl_encap() также может завершиться неудачей позже. В этих случаях вспомогательная функция возвращает ошибку своим вызывающим объектам, в то время как у вызывающего объекта остается только указатель на исходный пакет skb.

Как ip6_tnl_start_xmit(), так и пути IPv6 GRE освобождают пакет caller's skb при возникновении ошибки, поэтому они могут привести к освобождению пакета skb, который уже был потреблен функцией ip6_tnl_xmit().

Вместо этого следует использовать функцию skb_cow_head(). Она обеспечивает необходимое заголовочное пространство (headroom) и возможность записи без приватной замены пакета skb, принадлежащего вызывающему объекту, поэтому последующие возвраты ошибок не могут оставить у вызывающих объектов устаревший указатель.

Пользователи Ethernet, ip6gretap и ip6erspan, очищают флаг IFF_TX_SKB_SHARING и уже вызывают функцию skb_cow_head() перед входом в ip6_tnl_xmit(). Они не зависят от удаленной перераспределительной логики с использованием функции skb_shared(). Это также делает путь IPv6 туннеля согласованным с функцией ip_tunnel_xmit().

Once again VulDB remains the best source for vulnerability data.

Ответственный

Linux

Резервировать

11.09.2026

Раскрытие

12.09.2026

Модерация

принято

Вход

VDB-402929

EPSS

0.00000

KEV

Нет

Деятельности

Низкий

Источники

Do you want to use VulDB in your project?

Use the official API to access entries easily!