Mitigar o bloquear un ataque DoS en Linux

Mitigar o bloquear un ataque DoS en Linux

Los ataques de denegación de servicio (DoS) y los ataques distribuidos de denegación de servicio (DDoS), son bastante frecuentes en Internet. Aunque los ataques DoS tradicionales son menos comunes, los ataques DDoS que intentan rebasar un objetivo se han vuelto más avanzados. Veamos entonces cómo mitigar o bloquear un ataque DoS en Linux.

¿Qué es un ataque DoS?


Es un ataque que intenta interrumpir el servicio de un sistema conectado a la red, afectando a sus usuarios. Técnicamente el atacante lanza hacía el objetivo una avalancha de paquetes (puede ser SYN, HTTP, ICMP, etc), sobrecargando sus recursos y provocando que se ralentice o colapse, entonces impide que el servidor responda a las solicitudes de los usuarios. Varias son las empresas en Internet que han sido víctimas del DDoS, tal como le ha sucedido a GitHub, Telegram, AWS, Azure, etc.

Bloquear un ataque DoS en Linux


Esta técnica de defensa sirve tanto para ataques DoS como DDoS. Suponiendo que necesitamos mitigar un ataque DoS hacía el servicio web (puerto 80), y dicho ataque se basa en la técnica SYN flood. Entonces, éstos son los comandos iptables para hacer posible la defensa:

iptables -A INPUT -i interfaz_internet -p tcp --syn -m connlimit --connlimit-above 50 --connlimit-mask 32 -j DROP
iptables -A INPUT -i interfaz_internet -p tcp --syn -m limit --limit 10/s --limit-burst 20 -j ACCEPT
iptables -A INPUT -i interfaz_internet -p tcp --syn -j DROP

iptables -A INPUT -i interfaz_internet -p tcp --dport 80 -m state --state NEW -m recent --set --name HTTPFLOOD
iptables -A INPUT -i interfaz_internet -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 60 --hitcount 100 --name HTTPFLOOD -j DROP

También debemos habilitar la protección contra SYN  flood en el kernel:

net.ipv4.tcp_syncookies=1

Y hablo de mitigación porque esta defensa puede reducir el impacto del ataque en un 90 %, haciendo que su efecto sea imperceptible para el servicio que estamos protegiendo.

Puedes ver más en éste blog sobre Seguridad Informática.

Seguridad Informática en las Empresas

Comparte esto en
Publicado en Seguridad Informática.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *