HTExploit – Herramienta para saltar protección con archivos .htaccess


Los archivos . son archivos ocultos en texto plano utilizados en los servidores web Apache, que sirven para definir las directivas especificas que deseamos utilizar para una carpeta o en las diferentes subcarpetas que nacen de ella.

HTExploit HTExploit   Herramienta para saltar protección con archivos .htaccess
Los .htaccess son muy utilizados en la red por los webmasters y administradores de aplicaciones web, algunos de los usos más comunes de los archivos son:

  • Impedir listados de archivos en directorios
  • Redirecciones de trafico
  • Crear mensajes de error personalizados
  • Proteger carpetas
  • y un largo etc..

Precisamente el uso de los .htaccess para proteger carpetas es uno de los mas utilizados por los webmasters para salvaguardar información sensible de miradas no autorizadas y los fallos en la configuración de estos archivos son los que explota .

HTExploit es una herramienta desarrollada en python por el argentino Matías Katz (quien participo con nosotros en el ACK Security Conference) en colaboración con Maximiliano Soler, la cual fue recientemente expuesta en BlackHat 2012  y que hace parte desde la versión R3 de las herramientas para seguridad web incluidas en BackTrack 5, HTExploit nos permite saltarnos (bypassear) la protección realizada con .htaccess a carpetas sensibles en un servidor apache con php y descargar la informacion que se estaba protegiendo.

¿Cómo funciona HTexploit?

El fallo o “funcionalidad de Apache+PHP” que explota la herramienta no es nuevo, como el mismo Matías dice abiertamente, ya existía documentación sobre el tema en los foros de apache desde el año 1997 y consiste en enviarle una petición que el servidor Apache no entienda, por ejemplo DJAR, como esa petición no es conocida por Apache, este se la manda a el PHP para ver si lo sabe interpretar, como el servidor PHP tampoco conoce esa petición la toma como una petición GET, por tanto estaríamos realizando una petición GET con un método X como es el caso de DJAR.

Sabiendo esto ahora podemos entender por que protecciones como la siguiente, es vulnerable a la herramienta, ya que no estamos mandando una peticion “GET” pero al final el resultado es el mismo.

AuthUserFile /home/pagina/www/.htpasswd
AuthGroupFile /dev/null
AuthName “Password Protected Area”
AuthType Basic

<limit GET POST> //limita la autenticación de usuario SOLO a los métodos “GET” y “POST” por tanto al método DJAR no se le aplica.
require valid-user
</limit>

Codigos como los mostrados anteriormente son generados automáticamente cuando utilizamos servicios como .htaccess Generator y en ejemplos de configuracion de .htaccess sin saber que estos archivos son vulnerables a ataques como el realizado por HTExploit.

HTExploit 1 HTExploit   Herramienta para saltar protección con archivos .htaccess

Ahora que sabemos lo que hace HTExploit por debajo, vamos a ver sus parámetros y funcionamiento.

  • -h //Saca el menú de ayuda de la herramienta
  • -m // nos permite definir un modulo especifico que deseamos utilizar
    detect
    // identificar si el directorio es vulnerable
    full
    // opción por defecto y que escanea toda la carpeta en busca de archivos conocidos que estén en su diccionario
  • -u // url que deseamos atacar
  • -o // definir la carpeta de salida de los archivos
  • -w // definir el diccionario de archivos que vamos a utilizar *
  • -v // activar modo verbose para ver en todo momento que esta haciendo la herramienta

* El que la herramienta requiera un diccionario no quiere decir que se hagan ataques de fuerza bruta, el diccionario contiene nombres de archivos que posiblemente tenga la carpeta protegida, al igual que webscarab o dirbuster para encontrar archivos.

Lanzamos la herramienta con el parámetro ./htexploit -m detect -u http://www.mipagina.com/directorioprotegido/ y verificamos que la pagina realmente tenga una configuración de .htaccess vulnerable.

HTExploit 2 HTExploit   Herramienta para saltar protección con archivos .htaccess

Una vez sabemos que la carpeta es vulnerable, lanzamos la herramienta pasándole como parámetro la el diccionario de archivos, la url vulnerable ./htexploit -w res/FullList -u http://www.mipagina.com/directorioprotegido/ y la herramienta automáticamente genera una carpeta con un nombre aleatorio donde se almacenará la información descargada.

HTExploit 3 HTExploit   Herramienta para saltar protección con archivos .htaccess

En vez del archivo FullList que incluye htexploit podríamos usar el diccionario de DirBuster incluido en BackTrack 5 R3 cuya ruta es /pentest/web/dirbuster/directory-list-2.3-big.txt , teniendo en cuenta que entre mas grande sea el diccionario de archivos a buscar, mas posibilidades de éxito tendrías, pero también tardará mas.

¿Como configuro adecuadamente mi .htaccess?

Para que la configuración de tu .htaccess no sea vulnerable a htexploit, debes limitar aún más los métodos que puedes recibir, cambiando el “pida validacion a los métodos POST y GET” por “pida validacion a los métodos POST y GET y además deniegue el acceso a todo lo que no sea POST y GET” , esto se consigue añadiendo estas simples líneas de código a tu archivo .htaccess

AuthUserFile /home/pagina/www/.htpasswd
AuthGroupFile /dev/null
AuthName “Password Protected Area”
AuthType Basic

<limit GET POST>
require valid-user
</limit>

<LimitExcept POST GET>
Order deny,allow
Deny from all
</LimitExcept>

¿Que incluirá la herramienta en un futuro?

En próximas versiones se piensa añadir un explorador de enlaces dentro de los archivos descargados, para poder descargar mas archivos de los encontrados con los diccionarios, también se piensa implementar la recursividad, para no tener que ejecutar la herramienta varias veces, añadir los módulos de SQL Injection, RFI y LFI, entre otras funcionalidades.

Les dejo un video con la entrevista que hizo ToolsWatch a Matías y Maximiliano.

Y los slides de la charla sobre la herramienta en BlackHat 2012

Para mas información y descargar la herramienta, visita la Pagina Oficial de HTExploit


Si te ha gustado el post, compartelo y ayudanos a crecer.

Unete a nuestra Fanpage Siguenos en Twitter

Autor: DragoN

Ingeniero en Sistemas y Telecomunicaciones de la Universidad de Manizales. Information Security Researcher con más de 10 años de experiencias en Ethical Hacking, Pen Testing y Análisis Forense. Docente Universitario en Pre y Post-Grado, Speaker y Organizador de diferentes eventos de Seguridad Informática, Co-Fundador del ACK Security Conference y Fundador de DragonJAR SAS y de La Comunidad DragonJAR, una de las comunidades de seguridad informática mas grandes de habla hispana y referente en el sector.

Compartir este Artículo
  • Pingback: Bitacoras.com

  • Omh

    HTTP Verb Authentication Bypass Scanner. Metasploit hace bastante tiempo lo hace.

  • http://www.cuteam.org flacman

    :P y Scylla tmbn lo hace

    • http://www.dragonjar.org DragoN

      pronto sacaremos un review de la tool tambien aqui.

  • f4cus

    Muy buen post, mas allá de la herramienta, destaco la redacción y como explicas cada cosa parte por parte. Y además de la vulnerabilidad mostras la solución. Saludos desde Argentina.

    • http://www.dragonjar.org DragoN

      Mil gracias por tus comentarios f4cus

  • Luis

    muy buena herramienta, saludos Matias y Jaime Andres. Luis P. desde Ecuador.

  • randy

    Hola

    tengo una duda sobre el funcionamiento de la herramienta, en caso que tenga las directivas del .htacces en el virtualhost del portal, la herramienta verifica si el sitio es vulnerable?

  • Nombre Requerido

    Quisiera comprobar con mi web .. pero al decir ejoy Would you like to run the ‘full’ scan module? [Y/n] Y le digo que si que mas puedo hacer como puedo acceder a la web

  • Pingback: Crónica de la EHConference 2012 Bolivia #ehconference | Informática Legal - El Derecho en el Mundo Digital

  • Diego

    Muy buen articulo, muy bien explicado… muy bueno que muestres la solucion al problema.

    Muy buena informacion la que ponen en esta pagina… Felicitaciones