Ad

CVE-2026-80976

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

В ядре Linux устранена следующая уязвимость: seg6: сброс IP6CB после декапсуляции IPv6 decap_and_validate() извлекает внешние заголовки SRv6 и преобразует внутренние упакуйте сетевой заголовок skb. Блок управления IPv6 по-прежнему содержит значения, собранные при анализе внешнего пакета, включая nhoff и флаги заголовка расширения. End.DX6 и End.DT6 направляют внутренний пакет IPv6 непосредственно на IPv6. входной путь.

Непривилегированный пользователь может получить доступ к End.DT6 от пользователя и сети. пространство имен, установив локальный SID и внедрив внешний пакет с Заголовки Hop-by-Hop и Destination Options, за которыми следуют SRH и минимальный внутренний пакет IPv6. Внешние заголовки расширения оставляют большое значение nhoff в IP6CB. После декапсуляции, ip6_protocol_deliver_rcu() использует это устаревшее смещение внутренний пакет и читается за пределами головы skb.

КАСАН сообщает: ОШИБКА: KASAN: плита выходит за пределы границ в ip6_protocol_deliver_rcu ip6_protocol_deliver_rcu+0x1118/0x1450 ip6_input_finish+0x11b/0x240 seg6_local_input_core+0xed/0x2e0 lwtunnel_input+0x1e9/0x4e0 ipv6_rthdr_rcv+0x525f/0x6c50 ip6_protocol_deliver_rcu+0xcb7/0x1450 Прежде чем очищать IP6CB для внутреннего пакета IPv6, сохраните его входящий индекс интерфейса и состояние подчиненного устройства L3. Восстановление как после очистки, так и установки nhoff во внутреннее поле nexthdr базового заголовка IPv6. Используйте IP6CB(skb)->iif, а не skb->skb_iif, поскольку обработка VRF может замените skb_iif на мастер L3, в то время как IP6CB сохраняет прием интерфейс.

Сохраните IP6SKB_L3SLAVE по той же причине.

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

In the Linux kernel, the following vulnerability has been resolved: seg6: reset IP6CB after IPv6 decapsulation decap_and_validate() pulls the outer SRv6 headers and makes the inner packet the skb network header. The IPv6 control block still contains values collected while parsing the outer packet, including nhoff and extension-header flags. End.DX6 and End.DT6 route the inner IPv6 packet directly to the IPv6 input path. An unprivileged user can reach End.DT6 from a user and net namespace by installing a local SID and injecting an outer packet with Hop-by-Hop and Destination Options headers followed by an SRH and a minimal inner IPv6 packet. The outer extension headers leave a large nhoff in IP6CB. After decapsulation, ip6_protocol_deliver_rcu() uses that stale offset on the inner packet and reads beyond the skb head. KASAN reports: BUG: KASAN: slab-out-of-bounds in ip6_protocol_deliver_rcu ip6_protocol_deliver_rcu+0x1118/0x1450 ip6_input_finish+0x11b/0x240 seg6_local_input_core+0xed/0x2e0 lwtunnel_input+0x1e9/0x4e0 ipv6_rthdr_rcv+0x525f/0x6c50 ip6_protocol_deliver_rcu+0xcb7/0x1450 Before clearing IP6CB for an inner IPv6 packet, save its incoming interface index and L3 slave state. Restore both after the clear and set nhoff to the inner IPv6 base-header nexthdr field. Use IP6CB(skb)->iif rather than skb->skb_iif because VRF processing can replace skb_iif with the L3 master while IP6CB keeps the receiving interface. Preserve IP6SKB_L3SLAVE for the same reason.

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

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

Последствия

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

Строка CVSS v3.1