Files
exploit-example/README.md
2025-07-16 16:36:34 +02:00

2.2 KiB

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

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

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;
}

Archivo: net/netlink/af_netlink.c línea 1871 Problema: memcpy_from_msg sin validación previa completa

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

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

if (optlen < sizeof(int))
    return -EINVAL;
// Falta validación de límite superior

RECOMENDACIONES DE MITIGACIÓN:

Para Raw Sockets:

// Añadir validación mínima
if (iph->ihl < 5 || iph->ihl > 15) {
    err = -EINVAL;
    goto error_free;
}

Para Opciones IP:

// Validación consistente
if (optlen < MIN_OPT_LEN || optlen > MAX_OPT_LEN) {
    goto error;
}
// 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.