CVE-2026-90115 in Linux
Сводка
по VulDB • 17.09.2026
В ядре Linux была устранена следующая уязвимость:
xsk: исправлено разыменование нулевого указателя в __xsk_rcv()
На многобуферном пути функции __xsk_rcv() вызывается xsk_buff_alloc() внутри цикла без проверки возвращаемого значения. Функция xsk_buff_can_alloc() лишь подсчитывает записи очереди заполнения (fill queue), не проверяя их адреса, поэтому она может завершиться успешно, тогда как xsk_buff_alloc() отклонит все оставшиеся записи и вернет NULL.
Oops: general protection fault, вероятно, для неканонического адреса 0xdffffc0000000000 KASAN: null-ptr-deref в диапазоне [0x0000000000000000-0x0000000000000007]
RIP: 0010:__xsk_rcv+0x426/0xc20 (net/xdp/xsk.c:350) Call Trace: xsk_generic_rcv+0x26d/0x5f0 xdp_do_generic_redirect+0x3c5/0xcf0 do_xdp_generic+0x92f/0xe70 __netif_receive_skb_core.constprop.0+0xf7e/0x2b30
Исправление осуществляется с помощью двухэтапной транзакции. Сначала выделяются и подготавливаются (stage) все буферы, необходимые для пакета; если какое-либо выделение завершается неудачей, все подготовленные буферы освобождаются через xsk_buff_free(). Только после успешного завершения этого этапа данные копируются, резервируются дескрипторы RX, а затем буферы освобощаются в цикле без ошибок.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.