DDOS de prevención de ataques de http lento

3

A menudo recibo ataques DDOS de varias direcciones IP con simples solicitudes HEAD. Hay alrededor de 30 direcciones IP únicas que crean tales ataques.

201.230.167.68 - [05/Jan/2014:00:19:19 +0530] "HEAD / HTTP/1.1" 301 5.000 0 "-" "-" -  - 
77.121.228.31 - [05/Jan/2014:00:19:19 +0530] "HEAD / HTTP/1.1" 301 4.792 0 "-" "-" -  -
186.64.78.242 - [05/Jan/2014:00:19:19 +0530] "HEAD / HTTP/1.1" 301 5.000 0 "-" "-" -  -
77.121.228.31 - [05/Jan/2014:00:19:20 +0530] "HEAD / HTTP/1.1" 301 5.000 0 "-" "-" -  -
186.23.146.16 - [05/Jan/2014:00:19:20 +0530] "HEAD / HTTP/1.1" 301 5.005 0 "-" "-" -  -
201.230.167.68 - [05/Jan/2014:00:19:21 +0530] "HEAD / HTTP/1.1" 301 5.001 0 "-" "-" -  - 
186.64.78.242 - [05/Jan/2014:00:19:22 +0530] "HEAD / HTTP/1.1" 301 5.001 0 "-" "-" -  - 

Le agradecería mucho que alguien me ayude con ideas para prevenir dichos ataques.

    
pregunta pradeepchhetri 04.01.2014 - 21:17
fuente

6 respuestas

4

Instalar fail2ban y configurar la configuración de DoS / DDoS resolverá su problema. Es compatible con la limitación de velocidad. Y escribe dinámicamente las reglas de IPTables. Si usa Red Hat o CentOS, use el siguiente como root.

yum install fail2ban -y
chkconfig fail2ban on
vim /etc/fail2ban/jail.conf
service fail2ban restart
    
respondido por el Kasun 16.05.2014 - 22:30
fuente
1

Mirando las marcas de tiempo, esto es solo 1-3 solicitudes por segundo o menos. No debería importar demasiado para el funcionamiento habitual de un servidor web típico.

Ideas de mitigación

Hay mucho que se puede hacer para mitigar estos ataques, pero proporciono tres ideas.

  • PÁGINAS ESTÁTICAS: Casi todos los servidores web son más eficientes al servir páginas estáticas. Tal vez la página de inicio (/) puede ser la página estática?
  • REVERSE PROXY: si la página principal del sitio web es manejada por un proxy inverso, el proxy generalmente puede manejar solicitudes simples como HEAD de manera eficiente. El manejo de las páginas dinámicas de manera correcta y eficiente a través de proxy puede requerir alguna configuración.
  • En algunos servidores, HEAD / tarda mucho tiempo, ya que el servidor procesa toda la página construida de forma dinámica y luego solo proporciona la fecha y / o la duración. Quizás el servidor proporciona medios para manejar HEAD / más eficientemente que GET /?

Las ideas dependen de la cantidad de tráfico DDos que no puede completar todo su enlace ascendente. Ocasionalmente, los sitios web ven ataques masivos de DDos que saturan el ancho de banda de sus enlaces. En tales casos, las herramientas que puede utilizar en su sitio no son suficientes. El proxy inverso y / o su página de inicio podrían, en tal caso, ser atendidos directamente por su ISP.

    
respondido por el user4982 04.01.2014 - 21:56
fuente
1

No estoy de acuerdo con Fail2ban y otras reglas de firewall + lector de registro. No ayuda en este problema ya que la IP está cambiando y parece ser un ataque desde una botnet y creará una sobrecarga de memoria + CPU.

Debería usar módulos de servidor web para hacer esto, como ejemplo, Nginx proporciona ngx_http_limit_req_module y Apache proporciona mod_evasive que, en mi opinión, tienen una mejor eficiencia de rendimiento.

    
respondido por el Naoy 07.06.2014 - 17:32
fuente
0

Si no está utilizando una IP estática, reinicie su enrutador y debería cambiar su dirección IP. Si lo hace, eres bueno, si por alguna razón no puedes lograr esto y los ataques se vuelven más severos, puedes intentar llamar a tu ISP y solicitarles que cambien tu IP porque estás siendo DDose'd.

Dependiendo de las situaciones, pero realmente no hay nada que puedas hacer para bloquear esas conexiones, solo si bloqueas todas las conexiones en ese puerto, (lo que en la mayoría de los casos sería el puerto 80), pero eso evitará que uses el protocolo HTTP. .

    
respondido por el SomeNickName 04.01.2014 - 23:51
fuente
0

Cuando tuve este problema, todo lo que hice fue agregar un par de entradas a mis tablas de IP. Si está ejecutando Linux, entonces esto es realmente simple. Ejecute este comando para cada una de las direcciones IP ofensivas:

iptables -A INPUT -s IP-ADDRESS -j DROP

Esto asegurará que todos los paquetes que provengan de esas direcciones IP se eliminen, no se procesarán.

Si es posible, esto debería realizarse en el nivel del enrutador. Esto asegurará que los paquetes ni siquiera lleguen a su computadora. Nuevamente, este enfoque no evitará futuros ataques, tendrá que ingresar las direcciones IP que provienen de nuevos atacantes.

    
respondido por el John 16.04.2014 - 00:44
fuente
0

Como dijo @Kasun; Fail2ban probablemente sea su mejor estimación para introducir la limitación de velocidad. Otra cosa, mirando su registro anterior, es que puede deshabilitar la solicitud HEAD HTTP. No estoy seguro de si es compatible con RFC, pero nuevamente.

A una rápida Google, algunas de esas direcciones IP parecen ser spammers de comentarios, probablemente intentarán averiguar qué software está ejecutando (wordpress, joomla ...) y explotar sus debilidades o simplemente spam su sitio / Blog con comentarios.

Desde otro punto de vista, si su sitio tiene problemas (es decir, por tener una gran carga de CPU) por algunas solicitudes, tal vez debería ver si puede optimizar el sitio.

    
respondido por el ndrix 02.06.2014 - 13:24
fuente

Lea otras preguntas en las etiquetas