Dradis Framework permite almacenar y compartir información relacionada con los resultados de las pruebas de penetración en un equipo, es útil para tomar notas sobre cada uno de los resultados obtenidos en los test de penetración y para importar ficheros de resultados de escaneos con nmap o nessus, permite generar reportes en multiples formatos, soporta SSL y permite la conexión con repositorios externos (tales como bases de datos de vulnerabilidades).

Dradis tiene una consola Web y una consola de modo texto que permite la ejecucion de diferentes comandos (sin embargo esta ultima caracteristica se encuentra actualmente depreciada).

Instalacion y Ejecucion de Dradis:

Es necesario descargar la ultima versión del framework y crear un directorio donde se instalará el servidor web, por orden se aconseja tener todas las herramientas ubicadas en un mismo directorio (tales como nessus, metasploit y nexpose bajo el directorio /opt/ por ejemplo, sin embargo pueden ser ubicadas en cualquier sitio) ahora solamente basta con seguir los siguientes pasos para instalar y ejecutar el servidor:

  1. wget -c http://downloads.sourceforge.net/dradis/dradis-v2.6.1.tar.gz
  2. tar -xvvjf dradis-v2.6.1.tar.gz
  3. cd dradis-2.6/
  4. ./verify.sh
  5. El paso anterior indica una serie de requisitos que han debido cumplirse antes de poder iniciar el servidor, es muy probable que algunos ya se encuentren cubiertos dado que son dependencias de Ruby necesarias para la ejecución de metasploit, así que probablemente solamente sea necesario instalar la gema ruby bundler así:

    gem install bundler

    En el caso que no se encuentren instaladas las dependencias anteriormente mencionadas solamente hace falta ejecutar:

    apt-get install ruby irb rdoc ruby-dev libopenssl-ruby rubygems

  6. Si no se encuentran ya instaladas:

    apt-get install libsqlite3-0 libsqlite3-dev
    gem install sqlite3-ruby

  7. Luego definir la variable de las gemas de ruby al path, simplemente editando el fichero .bashrc del usuario en sesión y adicionando:
    export PATH=/var/lib/gems/1.8/bin/:$PATH
  8. recargar las variables:
    source .bashrc
  9. ejecutar el comando
    ./reset
    Posiblemente sea necesario ejecutarlo dos veces, dependiendo de los mensajes que aparezcan en consola
  10. Finalmente ejecutar el comando
    ./start.sh
    o
    ruby script/rails server
  11. El servidor ya se deberia encontrar a la espera de nuevos clientes, basta con dirigirse al puerto 3004, que es donde se encontrara dradis esperando conexiones.
    https://localhost:3004

    Importando ficheros:

    En versiones antiguas de Dradis existia una herramienta por linea de comandos que permitia subir ficheros generados por herramientas como nmap, sin embargo esta utilidad ha sido depreciada y ahora solamente se encuentra disponible la interfaz web, sin embargo las utilidades básicas para subir ficheros desde la consola web funcionan de la misma forma, solamente basta con pulsar sobre la opción “Import From File… ” y seleccionar el tipo de fichero que nos interesa, por ejemplo con nmap:
    nmap -v -sV 192.168.1.34 -oA subred
    Posteriormente seleccionar el fichero subred.xml generado
    Aunque esta bien tener nuestras notas y ramas sobre los escaneos realizados sobre nuestra red en Dradis, aun sigue siendo buena practica tener nuestros datos almacenados en la base de datos de metasploit, para esto iniciamos la consola de metasploit, cargamos el driver, nos conectamos a la base de datos en cuestión y cargamos los datos resultantes del comando nmap ejecutando (los detalles del uso de bases de datos en metasploit se encuentan en una entrada anterior de este blog aquí)

    db_import subred.xml

    Con esto se importan los datos del escaneo en base de datos con el fin de utilizarlos posteriormente por el framework.