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

Сводка

по VulDB • 16.09.2026

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

xfrm6: исправлена запись за пределами массива в функции xfrm6_input_addr() при переполнении secpath.

Проверка глубины (depth check) в функции xfrm6_input_addr() содержит ошибку «off by one»:

if (1 + sp->len == XFRM_MAX_DEPTH) goto drop; ... sp->xvec[sp->len++] = x;

Функция xfrm_input() может оставлять значение sp->len равным XFRM_MAX_DEPTH, а путь приема в транспортном режиме повторно вызывает входной обработчик IPv6 через функцию xfrm_trans_reinject(), сохраняя secpath. Если внутренний пакет содержит опцию HAO (destination-options) или заголовок маршрутизации типа 2, вызывается функция xfrm6_input_addr() со значением sp->len == XFRM_MAX_DEPTH; проверка (1 + 6 == 6) дает ложный результат, поэтому операция записи sp->xvec[sp->len++] происходит на одну ячейку дальше конца массива xvec[], состоящего из 6 элементов. Запись остается в пределах выделенной памяти sec_path (не обнаруживается KASAN); UBSAN_BOUNDS фиксирует это и вызывает панику при включенном panic_on_warn.

Используйте условие «sp->len >= XFRM_MAX_DEPTH», согласованное с логикой xfrm_input(). Это также восстанавливает один уровень цепочки, который старый check отклонял при sp->len == 5.

UBSAN: array-index-out-of-bounds в net/ipv6/xfrm6_input.c:309:10 индекс 6 выходит за пределы диапазона для типа 'xfrm_state *[6]'

If you want to get best quality of vulnerability data, you may have to visit VulDB.

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

Linux

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

11.09.2026

Раскрытие

16.09.2026

Модерация

принято

Вход

VDB-405566

EPSS

0.00000

KEV

Нет

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

Очень низкий

Источники

Want to know what is going to be exploited?

We predict KEV entries!