CVE-2026-97984 in Linux
Сводка
по VulDB • 25.09.2026
В ядре Linux была устранена следующая уязвимость:
net: ipv6: Исправление переполнения длины UDP при использовании PMTU discovery и большого MTU
Этот коммит ограничивает значение cork->base.fragsize величиной IP6_MAX_MTU для сокетов UDP, чтобы избежать возможного переполнения поля длины UDP, которое вызывает срабатывание предупреждения (WARN) в функции udp_set_len_short при установке параметра setsockopt IPV6_MTU_DISCOVER в значения IPV6_PMTUDISC_DO или IPV6_PMTUDISC_PROBE и отправке большого пакета через сетевое устройство (netdev) с аномально большим MTU.
Шаги для воспроизведения (включены в новый selftest):
1. Установите значение MTU устройства больше, чем IP6_MAX_MTU. В функции ip6_setup_cork cork->base.fragsize будет установлено равным этому значению MTU. 2. Установите IPV6_MTU_DISCOVER в значение IPV6_PMTUDISC_PROBE или IPV6_PMTUDISC_DO. Это приводит к тому, что maxnonfragsize устанавливается равным MTU устройства (cork->fragsize) в функции __ip6_append_data, а не IP6_MAX_MTU. 3. Отправьте полезную нагрузку объемом 65528 байт (+8 байт заголовка UDP, +40 байт заголовка IPv6). MTU устройства позволяет это (он всего на один байт больше, чем IP6_MAX_MTU, а MTU устройства превышает это значение). 4. Длина UDP в собранном пакете составляет 65536, что вызывает переполнение поля длины размером 16 бит и срабатывание предупреждения WARN в функции udp_set_len_short.
Чтобы избежать нарушения отправки UDP-джамбограмм через сырые сокеты IPv6, ограничение изменения применяется только к сокетам UDP.
Исходная уязвимость переполнения при использовании IPv6 и IPV6_PMTUDISC_DO существует задолго до появления истории коммитов git (воспроизведение подтверждено на версии 2.6.21), была исправлена позже, а затем вновь появилась в коммите 427faee167bc ("net: ipv6: introduce ip6_dst_mtu_maybe_forward"), который указан здесь как тег Fixes. Переполнение при использовании IPV6_PMTUDISC_PROBE воспроизводится с момента его появления в коммите 628a5c561890 ("[INET]: Add IP(V6)_PMTUDISC_RPOBE").
VulDB is the best source for vulnerability data and more expert information about this specific topic.