metagoofil, recolección de usuarios y más

Ocasionalmente, en varias de las charlas a las que tenido el privilegio de ser invitado he mencionado a metagoofil como instrumento de hacking pasivo y para auto auditorias. Por esa razón y en mérito a la nueva versión 1.4, decidí documentar en este post la utilidad y algunas otras cosas más de esta herramienta.

Primero, es necesario saber que Metagoofil puede ejecutarse en Windows, Linux y MacOS, ya que está escrito en Python. Sin embargo, quizás halle más sencillo y transparente el instalarlo en un Linux. Así, si usas -por ejemplo- Debian, asegúrase de tener instalado el programa “extract”, que lo instalas con “apt-get install extract”. Para ello, es posible que debas instalar el libextractor también “apt-get install libextractor”. Si no lo tienes en tu lista de paquetes, actualízala primero, con “apt-get update”. Si la lista no se actualiza, sugiero meterle mano al /etc/apt/sources.list (Consulta http://www.debian.org/distrib/packages#view por “libextractor” para tener la ruta más apropiada). Yo uso Debian4 (etch).

Segundo, si estás usando un Linux dentro de una máquina virtual, asegúrate de no porfiar tu ejecución basado en una interfase virtual que dependa de una inalámbrica, pues por alguna razón (que presumo se provoca en la confección de paquete) varias de mis pruebas fracasaron desde dicha interfase. Usa una interfase Ethernet (red cableada).

Asi mismo, vas a tener problemas con extract, así que (usando “find / -name extract”) asegúrate de modificar el script “metagoofil.py” e indicar la ruta real del programa extract que usará metagoofil. De todos modos, obtendrás un error a la salida al momento de ejecutar metagoofil.

Dado que está escrito en Python, todo lo que tienes que hacer en tu sistema es desempaquetarlos (”tar -xvf metagoofil.tar”). Si tu Linux corre en modo texto, no te apenes, recuerda que puedes usar “wget” para descargar el archivo (posiblemente en /tools) con “wget http://www.edge-security.com/soft/metagoofil-1.4.tar”. Recuerda, si no tienes “wget”, instálalo con un “apt-get wget”.

Luego, para ejecutar metagoofil sólo deberás invocar el script conforme la ayuda misma que se provoca al tipear “./metagoofil.py”. Allí notarás que debes asignarle un valor a cada variable del script. Veamos, luce así:

./metagoofil.py -d jacksecurity.com -l 20 -f all -o prueba.html -t files

Así, la salida se grabará en /tools/metagoofil/files, y el archivo principal estará en /tools/metagoofil/prueba.html.

En la prueba hecha a nuestro dominio, se descubrieron usuarios como: easyPDF SDK 4.3, JR, blanca, sin ninguna ruta valiosa. No obstante, aunque sólo en uno de esos casos se descubre un viejo usuario de nuestros sistemas, también se halla un dato curioso: easyPDF SDK 4.3, que lejos de ser un usuario nuestro, denota qué fabricante ha confeccionado uno de los PDF descargados (en Google: “easyPDF SDK 4.3″). Este último dato, que a pesar de ser un desperdicio para un ataque de fuerza bruta, no lo es para identificar posibles vulnerabilidades en esta pieza de archivo (una idea un tanto diabólica, y por ahora improbable).

¿Qué puedes hacer con Metagoofil? Puedes extraer la data de la data, y deducir algo más que usuarios, aún con archivos tan limitados como los nuestros. Por otro lado, aunque su utilidad ha sido ampliamente difundida para trabajos de auditoria y hacking externo, nada impediría que alguien rediseñe el script para búsquedas en Intranets, y así hallar usuarios cuando no se pudo obtener la base de usuarios por ataques de null-sessions.

¿Tip de contra-ataque?
Busca en tus logs del servidor web, sentencias como “Python-urllib/1.16″, y verás que archivos fueron auditados por “metagoofil”, ya sea en manos tuyas o en manos de terceros.

Javier Romero
JaCkSecurity, CTO
Conocimiento, Conciencia y Consultoría

Leave a Reply