Detener un ataque de DOS

9

Uno de los sitios con los que trabajo recientemente comenzó a obtener DoS'd. Comenzó a 30k RPS y ahora está a 50k / min. Las IP son prácticamente todas únicas, no están en la misma subred y se encuentran en varios países. Solo solicitan la página principal. ¿Algún consejo sobre cómo detener esto?

Los servidores se ejecutan en Linux con Apache como servidor web.

Gracias

Guillermo
fuente
¿Qué tipo de tráfico es? ¿Has identificado qué tipo de DDoS es? es decir, ¿está consumiendo su ancho de banda o está consumiendo los recursos de su sistema?
Josh Brower
Esta es una gran pregunta, pero aparentemente no hay una respuesta real. Wow, nunca supe que la pared de ladrillo DoS era tan gruesa.
Xeoncross

Respuestas:

4

No solo estás tratando de soportar un DoS, estás tratando de soportar un DDoS, que es distribuido y mucho más difícil de manejar.

Básicamente, está tratando de identificar el tráfico ilegítimo y bloquearlos. Idealmente, desea enrutar nulo este tráfico (incluso mejor haga que sus proveedores ascendentes lo enruten nulo).

El primer puerto de escala es la identificación. Debe encontrar alguna forma de identificar el tráfico que se envía a su host. Ya sea que se trate de un agente de usuario común, ya sea por el hecho de que en realidad no están utilizando un navegador adecuado ( SUGERENCIA: ¿actúan como navegadores adecuados? Muchas solicitudes cada IP está llegando a su servidor por hora.

No puede bloquearlos sin identificarlos y necesita encontrar alguna forma de hacerlo.

Esas herramientas de mitigación de DDoS esencialmente hacen lo mismo, excepto en tiempo real y cuestan una bomba. La mitad de las veces hay falsos positivos o el DDoS es tan grande que no importa de todos modos, así que tenga cuidado de dónde pone su dinero aquí si decide invertir en uno de ellos ahora o en el futuro.

Recuerde: 1. IDENTIFICAR 2. BLOQUEAR . 1 es la parte difícil.

Philip Reynolds
fuente
1
El problema no es bloquear, el problema es identificar. No puedes bloquear algo si no puedes identificarlo. Hasta ahora no hemos visto ningún patrón en absoluto. Navegadores reales, sin patrones en los tiempos de solicitud, países completamente diferentes, sin referencia, siguen redirecciones, aceptan cookies. Actúan como los usuarios normales. Parece que es casi imposible saberlo. Estamos pensando en enrutar todo el tráfico a Amazon, hacer que Amazon maneje todas las solicitudes de la página de inicio que se almacenará en caché, y todas las demás páginas manejadas por nuestra aplicación web por ahora. Gracias por la respuesta sin embargo.
William
Corrección menor: probablemente no sean navegadores reales, tenlo en cuenta cuando trabajes en la identificación. Además, ¿cómo es su base de usuarios? Si todo está centrado en Estados Unidos, es posible que desee bloquear las solicitudes en alta mar como un recurso provisional a comprar un poco de espacio para respirar ...
pboin
No son navegadores "reales" en el sentido de que usan Firefox, Chrome, etc. para sus solicitudes. Una cosa que notará es cómo dije que estas son IP únicas, que se ejecutan durante horas, a esa velocidad de RPS. Aparentemente, esta "persona" tiene una ENORME botnet, incluso nuestro centro de datos (ThePlanet) tampoco puede encontrar una manera de detenerla. No es muy fácil saber si es un navegador o no. Si sigue redireccionamientos, almacena cookies, etc., ¿cómo lo sabe? Además de que necesita recordar algo, cada solicitud es única. Por lo tanto, prohibir una IP no significa nada. Las solicitudes deben bloquearse antes de que lleguen a nuestro servidor.
William
¿Los no navegadores o los navegadores basados ​​en texto no tienden a ejecutar javascript? ¿Qué encabezado de agente de usuario están suministrando también?
Philip Reynolds el
1

Estás asumiendo que este es un DDoS intencional. Lo primero que debe intentar es cambiar la dirección IP. Si de hecho no es intencional, se detendrá.

¿De dónde vendrían estas solicitudes si no es intencional? Podría ser aleatorio, o podría ser un objetivo equivocado. Poco probable, pero vale la pena intentarlo.

¿Estás seguro de que no solo estás recibiendo un montón de tráfico legítimo? Tal vez has sido tachado, o algo así. Intenta mirar a los referentes en los registros.

Chase Seibert
fuente
0

¿Su enrutador front-end / equilibrador de carga no tiene administración de ataques DOS? El nuestro lo hace y hace un mundo de diferencia.

Chopper3
fuente
El problema es que TODAS las ip son únicas, de diferentes países, etc. Realmente no hay forma de distinguir al atacante de un usuario legítimo. TODO nuestro ancho de banda se está consumiendo en este momento, podemos hacer cualquier cosa.
William
Pero a los enrutadores y equilibradores de carga que administran DOS no les importa de dónde proviene el tráfico, si ven mucho de cierto tipo de tráfico relacionado con DOS de ciertas IP, entonces lo ignoran y continúan con su trabajo independientemente, permitiendo que los servidores El tráfico del servidor y del cliente debe tratarse correctamente. Personas como Cisco y Foundry ganan mucho dinero con su trabajo en esta área y lo que estás viendo no está fuera de lo común.
Chopper3
0

Puede pedirle a su proveedor ascendente que le pida ayuda a su proveedor ascendente. Digamos, por ejemplo, que ejecuta un sitio web solo con usuarios del Reino Unido. Luego, puede verificar dónde se origina el tráfico en general utilizando alguna base de datos whois. Digamos, por ejemplo, que una cantidad significativa de su tráfico no deseado se origina en Rusia, China y / o Corea. Luego puede llamar a su proveedor ascendente y hacer que llame a los suyos para que anulen temporalmente sus direcciones IP de estas áreas, suponiendo que tengan enrutadores cerca de las fuentes.

Esta no es una solución a largo plazo, pero ayuda si su base de usuarios está agrupada en algunas áreas geográficas. En el pasado, he ayudado a clientes como este, simplemente no anunciando a sus compañeros extranjeros, solo nacionales. Esto les quitó parte de su negocio (usuarios que los encontraron inalcanzables porque ya no estaban disponibles internacionalmente), pero es mucho mejor que simplemente estar fuera de servicio en general.

Pero al final del día esto es más un acto desesperado. Pero es mejor cortar una extremidad que perder el cuerpo.

Si tiene suerte, su proveedor de proveedores ascendentes tiene el equipo y está dispuesto a ayudarlo a filtrar la mayor parte del tráfico no deseado.

Buena suerte :-)

Runa Nilssen
fuente