El IP spoofing y cómo evitarlo
Enviado por Admin en la categoría networking
el Sábado, 17 Junio, 2006
El término “spoofing” se utiliza principalmente en el argor del networking pero podríamos definirlo como el acto de engañar, es decir, presentar una verdad falsa de una manera creíble. Hay diversos tipos de spoofing pero el más conocido suele ser el spoofing de dirección IP. La mayoría de los tipos de spoofing tienen un punto común: un usuario malicioso transmite paquetes con una dirección IP simulando que los paquetes se están originando en una máquina confiable.
El primer paso es seleccionar un objetivo. Seguidamente será necesario determinar la dirección IP origen confiable para el objetivo. Para conseguirlo se suelen ejecutar comandos para ver donde se exportan los archivos del sistema, o del tipo "rcpinfo" que aportan informacion sensible. Por último el atacante cambia la cabecera de los paquetes IP para que parezcan originados por la máquina confiable.
El IP spoofing no es un ataque, es sólo un paso para el ataque.
Repasemos las clases de spoofing más habituales:
El spoofing oculto:
En este tipo de ataque, un agresor fuera del perímetro de la red local transmite mútiples paquetes a su objetivo para obtener información de la secuencia para montar los paquetes en el orden adecuado. El atacante no tiene ningún control sobre las transmisiones en la LAN por lo que necesita engañar a la máquina objetivo para que responda a sus envíos y así analizar las secuencias.
Como sabemos el protocolo TCP es bastante seguro debido la negociación en 3 direcciones para establecer una comunicación:
1. Host A envía un SYN a Host B
2. Host B envía un SYN/ACK al Host A
3. Host A envía finalmente un ACK al Host B
En el SYN enviado por Host A aparece el "numero de secuencia" que al ser el primero en enviarse se denomina ISN (Initial Secuence Number) y es diferente en cada paquete. Cuando Host B responde con el SYN/ACK también le envía su ISN, y por último cuando Host A vuelve a responder con un ACK envía el ISN que le había enviado antes Host B sumándole 1 (ISN+1).
Una vez conocida la secuencia, el atacante puede inyectar datos en las secuencias de paquetes que se envían a la máquina sin haber abierto una sesión autentificada.
1. Host A (falso) envía un SYN a Host B
2. Host B envía un SYN/ACK al Host A
3. Host A (falso) env'ía finalmente un ACK al Host B con ISN conseguido anteriormente +1.
4. Host A envía PSH a Host B comenzado la transmisión de datos.
Generalmente los sistemas operativos actuales generan aleatoriamente esta secuencia dificultando este tipo de actividades.
El spoofing no oculto:
El agresor está en la misma red que su objetivo "snifando" las tranmisiones de paquetes entre el servidor y las máquinas confiables. Una vez descubre las secuencias de transmisión, el atacante puede secuestrar las sesiones sin tener que autentificarse porque eso ya lo ha hecho la máquina confiable.
Ataque de denegación de servicio (DoS):
En un ataque masivo contra una o varias máquinas se utiliza generalmente el spoofing para ocultar el origen del ataque. Alcanza especial gravedad cuando varias máquinas envían un flujo constante de paquetes contra un blanco. Generalmente se utilizan zombies o soldados (máquinas hackeadas) que provocan el ataque masivo desde direcciones falsas, esto hace que sea muy difícil de parar y rastrear por los operadores y administradores.
Ataque de maquina intermedia .
Cuando un atacante se sitúan entre la comunicación de dos máquinas retransmitiendo y captuando la comunicación entre ellas sin ser detectado. Este tipo de ataques suele ser utilizado para obtener informacion de seguridad.
Sorprendentemente el spoofing tiene también algún uso legítimo. El acceso a Internet por satélite es uno de ellos. Los paquetes en este tipo de transmisiones tienen unos retardos muy elevado y hay muchos protocolos que no aceptan nada bien esta latencia. Los proveedores de satelite hacen spoof de estos protocolos, incluyendo el IP, de modo que cada final de un flujo del paquete reciba los ACK sin mucho retraso.
Como evitar el spoofing
Parece que con 5 reglas básicas podemos poner las medidas necesarias para evitarlo
1. Utilizar la autentificación basada en el intercambio de claves entre las máquinas en la red; el uso de IPsec, por ejemplo, reducirá drásticamente en el riesgo de spoofing.
2. Utilizar ACLs (Access Control Listo o listas de control de acceso) para negar tráfico de direcciones IP privadas (no confiables) en tu interfaz en sentido descendente.
3. Poner en producción filtrado del tráfico de entrada y de salida del interface.
4. Configurar switches y routers para que denieguen tráfico dentro de la red que debería originarse fuera y viceversa.
5. Permitir el acceso hacia servidores locales desde máquinas externas confiables mediante sesiones cifradas establecidas contra los routers frontera de la LAN mediante VPNs
Tags: networking, seguridad, redes, IP, spoofing, routing

























