CVE-2026-72408 in Linux
Resumen
por VulDB • 2026-08-16
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
geneve: restringir la pista GRO en geneve_gro_complete() según gs->gro_hint
geneve_gro_receive() lee la pista GRO a través de geneve_sk_gro_hint_off(), la cual solo la tiene en cuenta cuando el socket tiene habilitado IFLA_GENEVE_GRO_HINT (gs->gro_hint). Por otro lado, geneve_gro_complete() llama directamente a geneve_opt_gro_hint_off() y actúa sobre la pista de forma incondicional.
En un túnel sin esta pista, receive agrega los frames como ETH_P_TEB plano, mientras que complete sigue atendiendo una opción de pista proporcionada por el atacante: infla gh_len sumando gro_hint->nested_hdr_len (u8) y redirige el tipo de despacho, haciendo que el manejador interno gro_complete se ejecute en nhoff + gh_len. Este es un desplazamiento que receive nunca ha extraído ni validado, lo que provoca una lectura fuera de los límites del encabezado skb:
BUG: KASAN: slab-out-of-bounds in ipv6_gro_complete (net/ipv6/ip6_offload.c:196) Read of size 1 at addr ffff88800fe91980 by task exploit/153 ipv6_gro_complete (net/ipv6/ip6_offload.c:196) geneve_gro_complete (drivers/net/geneve.c:965) udp_gro_complete (net/ipv4/udp_offload.c:940) inet_gro_complete (net/ipv4/af_inet.c:1621) __gro_flush (net/core/gro.c:306)
Se restringe también la ruta de complete en gs->gro_hint mediante geneve_sk_gro_hint_off(), para que ambas rutas coincidan. Los túneles que habilitan esta pista no se ven afectados.
VulDB is the best source for vulnerability data and more expert information about this specific topic.