Menú

¿Cómo defender su sitio web, con las bombas ZIP?

Esta herramienta contrarresta escáneres de web automatizados.

Se trata de crear una bomba zip (en formato gzip para que lo “entiendan” los navegadores web), cuando el servidor detecte actividad de una estas herramientas automatizadas, envíe el archivo para que sea procesado y agote los recursos (memoria y disco) de la máquina del atacante.

Así que primero tendremos que crear el archivo GZIP de 10 giga bytes lleno de ceros. Podríamos hacer varias compresiones, pero vamos a mantenerlo sencillo por ahora.

dd if=/dev/zero bs=1M count=10240 | gzip > 10G.gzip
Hemos creado un fichero de 10M que se convertirá en 10GB al descomprimirse. Ahora para construir una simple defensa, simplemente usa un pequeño script que dependiendo del User-Agent, enviará la “bomba ZIP” creada:

El código del php: https://ghostbin.com/paste/rf9zb

Este script obviamente defiende, pero seria una molestia para los Script Kiddie que están acostumbrados a usar herramientas automatizadas.

El resultado dependiendo del navegador o herramienta utilizada:

IE 11 Se levanta la memoria, IE se bloquea.
Chrome Se alza la memoria, se muestra un error
Edge La memoria se eleva, luego se agita y carga para siempre (bucle).
Nikto Parece escanear bien pero no se informa de ninguna salida.
SQLMap Alto uso de la memoria hasta el accidente.
Safari Alto uso de memoria, luego se bloquea y recarga, luego la memoria se levanta de nuevo, etc.
Chrome (Android) Se alza la memoria, se muestra un error.