# Reporte de Vulnerabilidades de Seguridad en net/ ## 1. VALIDACIÓN INSUFICIENTE EN RAW SOCKETS **Archivo**: net/ipv4/raw.c líneas 380-400 **Problema**: Campo IHL no validado adecuadamente **Impacto**: DoS, corrupción de memoria ```c iphlen = iph->ihl * 4; // Sin validación mínima if (iphlen > length) // Solo verifica máximo, no mínimo goto error_free; ``` ## 2. VALIDACIÓN DE LONGITUD EN OPCIONES IP **Archivo**: net/ipv4/ip_options.c líneas 279-286 **Problema**: Validación inconsistente de optlen ```c if (optlen < 2 || optlen > l) { pp_ptr = optptr; goto error; } // Pero luego: if (optlen < 3) { // Validación adicional inconsistente pp_ptr = optptr + 1; goto error; } ``` ## 3. MANEJO DE DATOS DE USUARIO EN NETLINK **Archivo**: net/netlink/af_netlink.c línea 1871 **Problema**: memcpy_from_msg sin validación previa completa ```c if (memcpy_from_msg(skb_put(skb, len), msg, len)) { kfree_skb(skb); goto out; } ``` ## 4. VALIDACIÓN DE TAMAÑO EN PACKET SOCKETS **Archivo**: net/packet/af_packet.c línea 2093 **Problema**: Potencial overflow en skb_put ```c err = memcpy_from_msg(skb_put(skb, len), msg, len); ``` ## 5. VERIFICACIÓN DE LÍMITES EN TCP **Archivo**: net/ipv4/tcp.c líneas 3774-3776 **Problema**: Validación mínima pero no máxima ```c if (optlen < sizeof(int)) return -EINVAL; // Falta validación de límite superior ``` ## RECOMENDACIONES DE MITIGACIÓN: ### Para Raw Sockets: ```c // Añadir validación mínima if (iph->ihl < 5 || iph->ihl > 15) { err = -EINVAL; goto error_free; } ``` ### Para Opciones IP: ```c // Validación consistente if (optlen < MIN_OPT_LEN || optlen > MAX_OPT_LEN) { goto error; } ``` ### Para Netlink: ```c // Validar límites antes de memcpy if (len > MAX_NETLINK_MSG_SIZE) { err = -EMSGSIZE; goto out; } ``` ## IMPACTO POTENCIAL: - Denegación de servicio (DoS) - Corrupción de memoria del kernel - Bypass de validaciones de seguridad - Potencial escalada de privilegios (en casos extremos) - Ataques de red remotos ## NIVEL DE SEVERIDAD: ALTO Estas vulnerabilidades pueden ser explotadas remotamente a través de la red y afectar la estabilidad del sistema.