Para mitigar los ataques de publicaciones lentas, configuré lo siguiente en mi Apache.
RequestReadTimeout header=5-20,MinRate=500 body=10-60,MinRate=500
El problema con esto es que cuando los usuarios cargan archivos con una conexión lenta, su conexión se interrumpe.
¿Existe alguna forma de adaptarse a las cargas lentas y al mismo tiempo proteger contra ataques de publicaciones lentas?
Respuesta1
Puede usar mod_qos y su QS_SrvMaxConnPerIP para limitar cuántas conexiones se pueden realizar mediante una dirección IP determinada. Eso puede evitarlo siempre y cuando el atacante no utilice demasiadas direcciones IP diferentes. Si tiene MaxClients de 150 y QS_SrvMaxConnPerIP de 45, podrían atacar desde 3 IP diferentes y tendría 15 conexiones disponibles (150 - (45*3) = 135. Tenga cuidado de no configurar esto demasiado bajo en caso de que tenga varias personas de la misma oficina que acceden al sitio, ya que cada navegador utiliza múltiples conexiones a la vez al cargar una página web.