Los ataques de denegación de servicio, conocidos también como DDoS del inglés: Distributed Denial of Service, son una de las formas más comunes de ciberataques en la actualidad.
Estos ataques consisten en inundar un sitio web o servicio en línea con una enorme cantidad de tráfico, con el objetivo de sobrecargar los servidores y hacer que el sitio se vuelva inaccesible para los usuarios legítimos. Los ataques DDoS pueden ser llevados a cabo por individuos o grupos con una variedad de motivaciones, desde el hacktivismo hasta el sabotaje empresarial.
Como podéis imaginar son un verdadero problema para una web o aplicación de cualquier tipo, ya que la dejan sin servicio. En esta entrada vamos a introducir el tema y a ofreceros una solución a este problema, que puede quitaros muchos quebraderos de cabeza, una nueva herramienta de Clouding.io: el Anti-DDoS estricto que unido a su filtro anti DDoS estándar, hacen que este problema pueda ser solo un recuerdo para ti.
¿De qué hablamos aquí?
Carga y uso de recursos de una web
Cuando una web o un servicio web de cualquier tipo recibe una visita, el servidor que está al otro lado tiene que procesarla, preparar los datos a enviar y enviarlos. Esto consume una serie de recursos de todo tipo: ancho de banda de red, memoria RAM, tiempo de CPU, accesos a disco, etc. Es muy frecuente que cuando una web empieza a tener cierto éxito, se le queda pequeño el alojamiento y tiene que moverse a otro con más capacidad.
Existen fórmulas para minimizar, optimizaciones de todo tipo: como cachés de fichero, CDN, limpiezas de bases de datos, cambios de temas en WorPress, desactivación de plugins… que tienen el punto común de querer minimizar la carga por cada visitante que entra. Pero claro, la carga que puede soportar un alojamiento tiene dos variables:
- la carga que provoca un usuario
- la cantidad de usuarios que acceden a la web en un momento dado
El problema aquí es que se acumulen usuarios, si en una web entran 1000 usuarios en un día, pero lo hacen de forma ordenada, los recursos no se verán comprometidos. Si los 1000 usuarios entran de forma simultánea, se genera el problema. Pensad que cuando un servidor entrega lo que le han pedido, vuelve a estar libre, pero claro, si te entran peticiones antes de terminar las anteriores, empiezan a apilarse y los recursos a agotarse. El problema suele venir cuando no queda RAM disponible y el uso de memoria de intercambio, swap, no es práctica para atender peticiones con los estándares de tiempos de entrega que tiene una web.
Cuando comencé en este muno de los blogs, las webs e Internet, era famoso el efecto Menéame. Nos encantaba salir en portada en este agregador de noticias que aunque hoy es popular, en su momento lo fue aún mucho más. Era una verdadera fuente de tráfico entrante como ninguna otra. Si tu blog tenía 1.000 visitas al día de repente un día tenía 80.000 gracias a aparecer en portada de Menéame. ¿Problema? Por lo general, la web se caía. Era como una especie de DDoS que te provocabas a ti mismo.
Si os fijáis, ese efecto, el de tirar la web por exceso de carga, es el que buscan los atacantes en un DDoS, pero en vez de ser visitantes licitos, son ilícitos así que no sacas nada bueno del ataque. Solo que tu web, tu app, o tu servicio no funcionen mientras el DDoS esté activo.
¿Quién suele ser la víctima de ataques de este tipo? Los servidores que más se ven afectados por ataques constantes son algunos servidores de juegos online o de servicios como TeamSpeak.
Cómo protegerse de los ataques DDoS
A nivel de aplicación es complicado protegerse de ataques de este tipo porque cuando el atacante llegas a poder bloquearlo en la aplicación: ya sea WordPress, otro CMS, una aplicación a medida o un proyecto de cualquier tipo… ya ha consumido bastantes recursos de tu sistema. Eso no es una opción práctica, así que la protección en estos casos pasa porque a nivel de sistemas, esté todo filtrado antes de llegar a procesarse la petición.
Hay ataques DDoS más fáciles de defender que otros, en base a como se produzcan: no es lo mismo que todos los atacantes compartan un rago de IPs a que esté completamente distribuido por el globo… no es lo mismo que los atacantes se identifiquen fácilmente como bots, a que parezcan usuarios legítimos…
Es curioso, este tipo de ataques se dan incluso en aplicaciones o webs que no son populares y hay alojamientos que cortan rangos de IPs completos de ciertos países o penalizan a bots de todo tipo consiguiendo que pierdas vistantes lícitos o que se bloqueen bots que necesitas que rastreen tu web, como los de Google, por darte un ejemplo.
La verdadera solución a los ataques DDoS
La solución pasa por trabajar con un hosting que se tome en serio el problema. En Clouding.io tienen un servicio básico que está activado por defecto de protección contra ataques de este tipo. ¿Cómo funciona? En modo normal, esta protección se encuentra en estado “durmiente”. De forma continuada se analiza el tráfico que llega a tu Servidor Cloud desde Internet y solo en el caso de detectarse tráfico inusual se activa el modo de filtrado. Esto se hace para minimizar falsos positivos que puede conllevar el filtrado y que podrían afectar al correcto funcionamiento y rendimiento de tu Servidor Cloud.
Pero si tienes un verdadero problema con este tipo de ataques, tienen una alternativa más potente y donde podrás sentirte realmente protegido. Es el denominado servicio filtrado DDoS estricto.
¿Cómo funciona el Anti DDoS Estricto?
Cuando un servidor tiene activado el Filtrado Anti-DDoS Estricto, el tráfico siempre es filtrado por los sistemas Anti-DDoS. Como parte positiva, esto reduce en gran manera el tráfico DDoS que puede llegar a recibir el Servidor Cloud y al mismo tiempo reduce el tiempo de reacción del sistema Anti-DDoS.
Pero como no podría ser de otra forma esto tiene consecuencias y por eso no se activa por defecto, porque también conlleva un mayor número de falsos positivos que podrían afectar al correcto funcionamiento de algunas aplicaciones o servicios alojados en el servidor.
Por ejemplo servicios que generen un gran volumen de tráfico UDP o ICMP podrían llegar a tener algún problema como: servidores VPN (especialmente aquellos que utilizan protocolos UDP), servidores DNS, servidores RDP (el protocolo RDP solo funcionará en modo TCP, no UDP) o de monitorización (Puede interferir puntualmente con el tráfico ICMP).
Pero claro, si tu servidor no es de este tipo y sufre ataques DDoS con cierta frecuencia y estás buscando una solución, ya sabes dónde la tienes. Un sistema creado específicamente para resolver este problema por un equipo de personas que ven este problema a menudo y han buscado la forma más eficaz de resolverlo.
Fotografía inicial: El equipo de Clouding.io trabajando en el montaje de su infraestructura de servidores en su Data Center. Foto: Sam Zucker.