Ping flood

El ping flood es un tipo de ataque de denegación de servicio(en inglés, denial of service). Para que te hagas una idea de en qué consiste, podríamos compararlo con una broma telefónica: el atacante llama y cuelga una y otra vez, colapsando la línea e impidiendo utilizar el servicio y responder a las llamadas legítimas.

Aparte del ping flood, se utilizan otros conocidos ataques de inundación como el HTTP flood, el SYN flood y el UDP flood, todos con el mismo objetivo: saturar el sistema de destino de solicitudes arbitrarias hasta colapsarlo. El ping flood no debe confundirse con el llamado ping de la muerte (en inglés, ping of death), que bloquea el sistema de destino directamente, sin sobrecargarlo de datos.

¿Qué es el ping flood?

El ping flood es un ciberataque que puede dirigirse contra diversos sistemas conectados a Internet, como servidores, rúters u ordenadores domésticos de usuarios particulares.

En términos técnicos, el ping flood se basa en el Internet Control Message Protocol (ICMP). Este protocolo y el relacionado comando “ping” se utilizan habitualmente para llevar a cabo pruebas de red. Mediante el ping flood, se realiza un envío masivo de paquetes ICMP echo request al ordenador de destino. De esta manera, si el atacante tiene más ancho de banda que la víctima, esta se cae de la red.

¿En qué consiste el ping flood?

El funcionamiento de un ataque ping flood es simple:

  1. El atacante envía paquetes echo request de forma masiva al dispositivo de la víctima.
  2. El dispositivo de la víctima responde con paquetes echo reply.

Cada paquete echo request entrante utiliza ancho de banda de la víctima. Como también se envía un paquete de tipo echo reply por cada paquete entrante, el volumen de datos del tráfico de red saliente igualmente elevado. Si el atacante tiene suficiente ancho de banda, esto provoca que se utilicen todos recursos de red disponibles en el lado de la víctima. De esta manera, el tráfico de red legítimo se interrumpe o se pierde por completo.

Dependiendo de si el ataque se lleva a cabo desde un solo ordenador o desde una red informática, el ping floodattack será un ataque DoS o DDoS.

Ataque ping flood como denegación de servicio (DoS)

En esta versión más simple del ataque, el atacante (A) envía los paquetes echo request a la víctima (V) desde un único dispositivo. Para no revelar su identidad, el atacante recurre al spoofing y cambia su propia dirección IP. El ordenador (O) al que se puede acceder aleatoriamente mediante esta dirección IP es bombardeado por los paquetes echo reply resultantes. Este efecto de retrodispersión también se conoce como backscatter. En algunas variantes del ping flood, como el llamado ataque pitufo o ataque smurf, la retrodispersión se utiliza como arma en sí misma.

Para dirigir el ping flood contra la víctima, el atacante utiliza el comando “ping” o una alternativa moderna como la herramienta hping. El ataque comienza en la línea de comandos: el ping flood se desencadena mediante un comando diseñado especialmente para el mismo. Por razones de seguridad, solo podemos incluir una muestra aproximada del código “hping”:

hping --icmp --flood --rand-source -p <Port> <dirección IP>

Veamos las opciones:

  • La opción --icmp indica a la herramienta que utilice ICMP como protocolo.
  • La opción --flood es muy importante: de acuerdo con la documentación del comando “hping”, provoca que los paquetes se envíen lo más rápido posible. Por otro lado, esta opción hace que los paquetes echo reply de la víctima se descarten sin que se note. De esta manera, en lugar de ejecutar “ping” y luego esperar a que llegue la respuesta, como ocurre con el uso normal de este comando, la respuesta se “dispara” lo más rápido posible.
  • La opción --rand-source falsifica la dirección IP del remitente. Así, en lugar de la dirección real, se introduce una dirección IP aleatoria.

Ataque ping flood como denegación de servicio distribuida (DDoS)

Para desencadenar un ping flood distribuido, el atacante (A) utiliza una botnet (B). Al ejecutar el comando, los bots que controla el atacante inician el ping flood contra la víctima (V). En este caso, como varios ordenadores apuntan al mismo objetivo, hay disponible un ancho de banda mucho mayor en el lado del atacante. Solo un objetivo muy bien protegido es capaz de contrarrestar este ataque.

En esta situación, el atacante no envía los paquetes echo request desde su propio ordenador, por lo que no hay razón para que oculte su dirección IP. Son los bots los que realizan las solicitudes desde su propia dirección, y la retrodispersión afecta a los ordenadores zombis de la botnet.

Medidas de protección contra los ataques ping flood

Hay tres formas principales de protegerse contra los ataques ping flood:

Configurar el sistema para mejorar la seguridad

Probablemente, la forma más fácil de protegerse contra un ping floodattack es deshabilitar la funcionalidad ICMP del dispositivo de la víctima. Esta medida es de ayuda inmediatamente cuando se ha iniciado un ping flood, aunque también puede utilizarse de forma preventiva para minimizar el área de ataque.

Además, pueden configurarse rúters y firewalls para detectar y filtrar el tráfico de red malicioso entrante. El uso de tecnologías de equilibrio de carga(en inglés, load balancing) y limitación de velocidad (en inglés, rate limiting) también ayudan a protegerse de los ataques DoS.

Utilizar un servicio basado en la nube para mitigar DDoS

Grandes proveedores como Cloudflare tienen disponibles servidores en centros de datos distribuidos en todo el mundo. Si administras tu propio sitio web, puedes guiar el tráfico a través de estos centros de datos, lo que implica disponer de un ancho de banda mucho mayor para amortiguar los ataques DDoS. Además, el tráfico de datos se filtra mediante sistemas integrados como un firewall, un equilibrador de carga y un limitador de velocidad.

Proteger el sistema con hardware especial

La opción de proteger el propio sistema con hardware especial solo es conveniente para las grandes empresas. Estos dispositivos ofrecen o combinan la funcionalidad de un firewall, un equilibrador de carga y un limitador de velocidad para filtrar o bloquear el tráfico malicioso de la red.