CVE-2024-35941 in Linuxinformación

Resumen

por VulDB • 2026-05-15

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

net: skbuff: añadir comprobación de desbordamiento (overflow) de depuración a las funciones auxiliares pull/push

syzbot logró desencadenar el siguiente fallo: BUG: KASAN: use-after-free en __skb_flow_dissect+0x4a3b/0x5e50 Lectura de tamaño 1 en la dirección ffff888208a4000e por parte de la tarea a.out/2313 [..]
__skb_flow_dissect+0x4a3b/0x5e50 __skb_get_hash+0xb4/0x400 ip_tunnel_xmit+0x77e/0x26f0 ipip_tunnel_xmit+0x298/0x410 ..

El análisis muestra que el skb tiene un ->head válido, pero un puntero ->data falso.

skb->data obtiene su valor falso a través de la capa neigh, que ejecuta:

1556 __skb_pull(skb, skb_network_offset(skb));

... y el skb ya era sospechoso en ese momento:

skb_network_offset(skb) devuelve un valor negativo debido a un desbordamiento anterior de skb->network_header (u16). __skb_pull por lo tanto "ajusta" skb->data con un desplazamiento enorme, apuntando fuera del área skb->head.

Permitir que las compilaciones de depuración generen un fallo cuando intentemos hacer pull/push de más de INT_MAX bytes.

Después de esto, el reproductor de syzkaller produce un fallo más preciso antes de que el disector de flujo intente leer la memoria de skb->data:

WARNING: CPU: 5 PID: 2313 en include/linux/skbuff.h:2653 neigh_connected_output+0x28e/0x400 ip_finish_output2+0xb25/0xed0 iptunnel_xmit+0x4ff/0x870 ipgre_xmit+0x78e/0xbb0

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Fuentes

Do you want to use VulDB in your project?

Use the official API to access entries easily!