Los ataques de Denegación de Servicio (Denial of Service, DoS) son casi tan antiguos como las redes de comunicaciones, pero de un tiempo a esta parte se han popularizado entre las bandadas de script kiddies, para atacar a todo lo que no les gusta. Ya sean partidos políticos, webs de ministerios e instituciones del estado, empresas privadas, etc. Nadie está a salvo de la “ira vengadora” de un quinceañero con ínfulas de guerrillero (mientras sus padres piensan que está haciendo “los deberes”).
Primera observación: es delito en España desde diciembre del 2010 participar en este tipo de ataques. Leo en Twitter a algunos que argumentan que ellos “sólo se ponen de acuerdo para visitar una página web“. Menuda desfachatez. Llamar al 112 no es delito, por supuesto. Ponerte de acuerdo con 1000 colegas para que cada uno haga mil llamadas al 112 a una hora concreta puede poner vidas en peligro si nadie puede avisar a los bomberos de un incendio o avisar a la policía de un crimen.
Pero dejándo disquisiciones ético-legales a un lado, ¿qué se puede hacer para defenderse de ataques DoS? No es fácil y no hay soluciones mágicas, pero hay cosas que se pueden hacer:
Estar preparado
Los ataques que consisten en miles de conexiones válidas por segundo funcionan porque cada una de las conexiones supone una carga en nuestros servidores (mostrar la información de la página web, quizá haciendo consultas a una base de datos, etc.)
Todo el mundo que tiene página web debería tener calculado el impacto en rendimiento de sus páginas, y tener siempre un “website” alternativo de bajo impacto para situaciones de sobrecarga. Por ejemplo, durante los ataques en Nueva York del 11-S, muchos medios de comunicación sufrieron un “ataque DoS” no intencionado al tener a millones de personas por todo el mundo intentando enterarse de qué pasaba. Algunos, como la CNN cambiaron su página normal por una de sólo texto, sin publicidad, ni elementos innecesarios, de forma que cada petición se pudiera procesar en menos tiempo y así poder atender más conexiones por segundo.
Esto se puede incluso automatizar, de forma que los servidores web cambien automáticamente a la versión “light” en cuanto detectan un aumento inesperado del nivel de peticiones.
Usar redes de distribución de contenido (CDN)
Los CDN son sistemas que permiten a las empresas distribuir su contenido estático por servidores distribuidos por todo el mundo, como los proporcionados por la empresa Akamai. Durante los ataques DDoS a partidos políticos a finales de diciembre de 2010, casi todos cayeron enseguida (PP, CiU, etc.). Algunos de ellos tienen sus páginas alojadas en empresas de hosting de las de 10€/mes, y se merecen lo que les pase. Sin embargo, hubo una web de un partido que, aparentemente, no sucumbió, y es la del PSOE. Simplemente hicieron que su página principal fuera estática y fuera servida por servidores de Akamai. Da igual que se caigan los servidores, en todo momento se podía seguir visitando la web (con una funcionalidad reducida). Algunos críos participantes en el ataque se indignaron por esta “trampa”.
Como si quiero entrar en tu casa y digo que haces trampa por echar la llave. En fin.
Que te ayude tu proveedor de acceso a Internet
Si tienes un proveedor de acceso serio, siempre podrás pedir que te ayuden en caso de ataque. Como mínimo deberían ser capaces de reenviar el tráfico que está dirigido a tus sistemas, a una ruta inválida (null route) de forma temporal.
El problema de este sistema es que nadie podrá acceder desde fuera, ni los atacantes ni tus usuarios legítimos. Entre los participantes en el ataque, que normalmente no tienen conocimientos suficientes, se cree que el ataque ha tenido éxito, ya que la página web deja de estar accesible.
Esto viene a ser la estrategia de “hacerse el muerto”, que puede ser muy válida en algunos casos, sobre todo combinada con contenido estático en CDN (ver punto anterior).
Utilizar una solución anti-DDoS proporcionada por tu proveedor de acceso
Esto suele ser lo necesario cuando quieres evitar el ataque, pero quieres mantener tu sitio accesible por usuarios legítimos, y que el contenido no sea estático, sino transaccional. Es decir, seguir operando “business as usual”. Estas soluciones son complejas, y normalmente las ofrecen los proveedores de acceso a Internet a las grandes empresas, con un coste por supuesto.
Suelen consistir en:
- Sistema de detección – elementos de red (tipo Arbor Peakflow) que detectan la anomalía en el tráfico de red y hacen análisis del tráfico. Si se situan en la “ruta” entre Internet y tu perímetro, suelen estar gestionados por el ISP. Si los situas en tu perímetro, pueden estar gestionados por el ISP o por la empresa cliente.
- Mecanismo de redirección – puede ser iniciado por el ISP o por la empresa atacada, y suele consistir en “publicar” una ruta nueva usando el protocolo de rutado BGP, de forma que el tráfico a ciertas IPs se redirija a través de un sistema de mitigación.
- Sistema de mitigación – son elementos de red (tipo Cisco Guard), gestionados por el ISP, que se “comen” todo el tráfico (suelen tener una capacidad enorme, difícil de saturar por el ataque típico), y se encargan de “separar el grano de la paja” mediante análisis estadístico, y reenvían a la empresa atacada el tráfico “limpio” mediante un túnel GRE cifrado.
Si la disponibilidad y el libre acceso a nuestras aplicaciones y contenido son vitales, es imprescindible tener algún tipo de preparación contra ataques de denegación de servicio. Dependiendo de nuestras necesidades y/o presupuesto, podremos usar unas medidas u otras. Para un estudio estupendo sobre el estado de las cosas, lo mejor es el “Network Infrastructure Security Report” que publica Arbor Networks anualmente.
Fuente: areino.com