Apache Benchmark, mas conocido como ab, es parte del paquete apache-utils. Es una herramienta para pruebas de carga usada obviamente en apache o cualquier servidor web en el que se requiera saber cuanta carga aguanta sin colapsar. Si bien nos permite tunear bastante bien nuestro servidor web, puede ser un arma de doble filo, ya que si el servidor no está bien configurado, como pasa la mayoría de las veces, cualquier Script Kiddie podría usarla en nuestra contra para fastidiar la red haciendo miles de peticiones en segundos hacia el servidor, llegando aveces a colapsarlo por completo.
Durante algún tiempo me he dedicado a testear algunos sitios bastante visitados por el común de la gente y me he dado cuenta que un muy bajo porcentaje está realmente protegido ante dichos ataques.

¿Como atacar?
ab -c 1000 -t 1000 http://www.antronio.com/

Una prueba de como enviar 1000 conexiones con un tiempo de espera de 1000 segundos. Como notarán el sitio tiende a colapsar ¿Por que? La razón es simple, un sitio “grande” en lo que a base de datos se refiere tiende a pedir auxilio con un exceso de conexiones concurrentes.

¿Como lo soluciono?
Limitando la cantidad de conexiones concurrentes en el servidor, ya sea en un tiempo determinado o basándose en la dirección IP de origen.

Algunas veces traté de implementar el modulo connlimit de iptables, pero además de unos errores de compilación de kernel no conseguí mucho.

¿Es posiblie protegerse sin usar este modulo?

La verdad es si, hay otros módulos de protección bastante detallados en el manual de iptables, experimentando un poquito se puede lograr ¿Como? RTFM, Ya está presente la preocupación, ahora es tarea de ustedes investigar un poquito el como evitar un DoS en sus máquinas.

Saldos 😀

Ingeniero, enfocado en la familia y el cliente, emprendiendo y capitalizando lo aprendido por años.

Dedico algo de tiempo a compartir con ustedes mis experiencias sobre informática y tecnología porque en mas de una ocasión fui yo quien aprendí de otros a través de sitios como este.

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.