22 agosto 2013

GoLismero: Nueva herramienta de hacking debutando en OWASP

Le prometí hace unas semanas a Yago que el primer post técnico sobre GoLismero lo tendrían en SBD. Y lo prometido es deuda.

GoLismero 2.0 ha sido presentado hoy de forma oficial en el AppSec EU de OWAP  en Hamburgo, Alemania (y desde allí os escribo este post :D).

Vayamos por partes....

Qué es GoLismero?

GoLismero 2.0 es un framework opensource para realizar auditorías de seguridad y pentesting. 

De momento se encuentra orientado principalmente a auditoría web, pero puede ser fácilmente extendido para otro tipo de escaneos.

Información del proyecto:

Qué tiene de especial GoLismero?

Las principales características se pueden resumir en:
  • Multiplataforma real. Ha sito probado en Windows, Linux, *BSD y OS X.
  • No tiene dependencias de librerías nativas. Todo el framework está escrito completamente en python.
  • Rendimiento óptimo, en comparación con otros frameworks escritos en python.
  • Realmente fácil de usar.
  • Crear nuevos plugins es extremadamente sencillo.
  • El frameworks puede recopilar y unificar resultados de otras herramientas de seguridad populares, como: sqlmap, xsser, openvas, dnsrecon, theharvester...
  • Integración con estándars: CWE, CVE y OWASP.
  • Diseñado para funcionar en modo cluster, aunque todavía no está disponibles.
El punto marcado negrita creemos que es la mayor novedad y principal atractivo para usar GoLismero. 

Además de sus propias pruebas, GoLismero ejecutará automáticamente por nosotros herramientas conocidas y populares (todavía no están todas integradas, estamos trabajando en ello) cogerá sus resultados, los unificará y realimentará las herramientas con los resultados obtenidos. Es decir: cogerá los resultados de un análisis con OpenVas y los enviará al SQLMap, XSSser, DNSrecon, etc. Y todo de forma automática, chulo, no?


Es una actualización de GoLismero 0.6.3?

GoLismero 0.6.3 (incluido en Backtrack y Kali Linux, por ejemplo) era un simple mapper con algunas funciones muy básicas de análisis.  GoLismero 2.0 ha sido reescrito desde cero y de la versión inicial solo conserva en nombre :)


Cómo usar GoLismero?

Usar GoLismero 2.0 es muy fácil: A continuación se explican uno cuantos comandos básicos para poder empezar a usar GoLismero:

Instalación

Aunque próximamente liberaremos una modificación de la Kali Linux con todo lo necesario para ejecutar GoLismero, de comento lo podéis descargar así:

Descargamos https://github.com/golismero/golismero/archive/master.zip y extraemos el contenido donde queramos. GoLismero lleva todas las dependencias necesarias integradas (a excepción del intérprete de Python) con lo que no tendremos que hacer nada más.

También puede descargar la versión más reciente usando GIT:
git clone https://github.com/golismero/golismero.git

Uso básico

Este comando lanzará GoLismero con todas las opciones por defecto y mostrará el informe por la salida estándar (habitualmente la consola):
python golismero.py <target>
También puede configurar el nombre de la auditoría:
python golismero.py <target> --audit-name <name>
GoLismero permite generar informes de diferentes formatos. El formato será reconocido automáticamente por la extensión del fichero de salida. Además, puede indicar varios archivos de salida en varios formatos diferentes a la vez:
python golismero.py <target> -o <output file name>
python golismero.py <target> -o <output file name>.html -o <output file name>.txt

Además, puede importar resultados de otras herramientas con la opción "-i". Puede usar "-i" tantas veces como resultados quiera importar. El siguiente ejemplo muestra como parsear los resultados de un escaneo de Nikto y generar un informe. Para evitar que GoLismero se realimente con los resultados de Nikto desabilitaremos todos los plugins:
python golismero.py www.example.com -i nikto_output.csv -o report.html -d all


Todos los resultados son automáticamente guardados en el fichero de base de datos. Puede evitar esto con la opción "-nd":
python golismero.py <target> -nd


Esto permite escanear el target en un momento dado y generar el informe después. Por ejemplo, para lanzar un scan sin generar el informe:
python golismero.py <target> -db database.db -no
En otro momento generamos el informe a partir de la base de datos (¡o en una máquina diferente!).
python golismero.py -db database.db -d all -o report.html 


Plugins disponibles

Para mostrar la lista de plugins disponibles:
python golismero.py --plugin-list

 También puede mostrar los detalles de un plugin específico:
python golismero.py --plugin-info <plugin name>


La lista completa de plugins está disponible online: http://golismero-project.com/doc/plugin_list/index.html.


Generación de informes

Hemos tratado de que los informe no sean los típicos reportes "juacker", sino que sean visualmente agradables y útiles. Los informes generados en HTML siguen diseño responable, gráficas y buscador javascript integrado. Además, no tienen ninguna dependencia de css o javascript, todas las librerías van incrustadas en un solo fichero para que sea fácil de enviar/mover.

Así es cómo se generan los informes en HTML para una auditoría:
python golismero.py <target> -o report.html
Resumen:



Detalles:


Cuáles son los siguiente pasos?

Las siguientes funcionalidades serán:
  • Integración con Nmap, SQLMap, Metasploit y otras herramientas.
  • Interfaz web. Sabemos que los h4xx0rs solo utilizan la consola, pero a veces el copy&paste está bien ;)
  • Exportar los resutlados a PDF.
  • Y muchas cosas más, por supuesto!


Quiénes somos?

Y ya por último, presentarnos:

GoLismero 2.0 ha podido ver la luz gracias al apoyo incondicional de Buguroo, que ha sido quien ha subvencionado el desarrollo y ha permitido que sea publicada como software open source.

Los creadores:

2 comments :

Aladroque dijo...

Me encanta el nombresico. le echare un vistaso :)

pedro dijo...

muy buena herramienta :D