SYN Flood - BoomerNiX

lunes, 19 de marzo de 2018

SYN Flood


Hoy voy a crear un breve post sobre denegación de servicio, el ataque SYN flood. En esta ocasión se hará uso de hping para llevar a cabo la simulación de ataque.

Lo primero explicar en qué consiste el ataque, para entenderlo es importante saber cómo se establece una conexión TCP a través del three-way handshake, consiste en lo siguiente (a rasgos generales, no entraremos en que es una flag o indicador, ni el formato del paquete TCP, para ello se puede visitar mismamente la Wikipedia)
  1. El cliente envía un paquete con la flag SYN activa
  2.  El servidor al recibir el paquete 1 enviará un paquete con las flags SYN+ACK
  3. El cliente envía un último paquete con la flag ACK activa
En este punto, ya tendremos establecida la conexión. 

El ataque consiste en enviar un gran número de solicitudes de conexión a la víctima con la dirección IP de origen falseada, por lo tanto, haremos el envío del paquete que se vio en el paso 1 con una IP cualquiera, la victima mandará el paquete del paso 2 y no obtendrá el del punto 3, se quedará esperando un tiempo su respuesta, por ello si mandamos muchos paquetes podemos generar una denegación de servicio.

Para hacer este ataque nos podemos ayudar de hping3, para su instalación en Linux basta con ejecutar lo siguiente en una terminal:

sudo apt install hping3

Se puede acceder a sus opciones y ver más acerca de la herramienta con:

man hping3

Llevar a cabo el ataque SYN flood es bastante sencillo, basta con ejecutar lo siguiente:

hping3 --flood -p <numero puerto> -S <IP victima>

Las opciones de la orden de arriba:
  • --flod: La opción para inundar a la víctima.
  • -p: Para indicarle el número de puerto
  • -S: Establece el indicador o flag de SYN.
A continuación, una captura de cómo lo ejecutamos:


Para probarlo puedes montarte un servidor web en una máquina virtual, en este caso se está haciendo uso de una máquina virtual con Metasploitable, que ya tiene el servicio, y comprobamos que antes de lanzar el comando funcionaba, y mientras corre hping3 no podemos acceder. Además, si le hacemos ping su respuesta es bastante lenta y la mayoría ni llegan:



En la imagen anterior los 4 primeros paquetes se reciben mientras hping3 está corriendo, por el contrario los últimos 5 sin que este activo, se puede apreciar la diferencia del tiempo que tardan unos y otros. Y el % de paquetes perdidos es del 83.

Los recursos de la prueba eran bastante limitados, en otros entornos se va a necesitar "algo más" para producir esta situación.

 Hasta la próxima.

No hay comentarios:

Publicar un comentario