Bienvenidos a un nuevo post de ByteMind. En el caso de hoy vamos a hablar de Dradis, una herramienta muy potente que ayudará a ver de una forma más clara toda la información recolectada durante un test de penetración.
¿Qué es Dradis?
Dradis es un framework open source, en su versión Comunity, para reportes y visualización de información. Además puede integrar información de multitud de herramientas como pueden ser Nmap, Nessus, Nikto, Burp Suite, etc.
Instalación de Dradis
El primer paso será actualizar los paquetes existentes en nuestro sistema, en nuestro caso vamos a realizar la misma sobre Kali Linux.
Para realizar esta actualización utilizaremos el siguiente comando:
1 |
sudo apt-get update |
Además necesitaremos tener instalado git en nuestro sistema para poder descargar el paquete. Si no lo tienes instalado, puedes hacerlo con el siguiente comando:
1 |
sudo apt-get install git -y |
Instalaremos ahora nokogiri. Para ello instalamos las dependencias necesarias:
1 |
apt-get install build-essential patch ruby-dev zlib1g-dev liblzma-dev libpq-dev libsqlite3-dev |
Instalamos las gemas necesarias:
1 2 3 |
gem install gitrob gem pristine rake gem install childprocess |
E instalamos la gema de nokogiri:
1 |
gem install nokogiri |
Completadas las dependencias procedemos a clonar el repositorio de github en nuestra máquina con el siguiente comando:
1 |
git clone https://github.com/dradis/dradis-ce.git |
Podéis acceder al repositorio oficial de Dradis-CE en github.
Una vez descargado, accedemos al directorio recién creado:
1 |
cd dradis-ce/ |
Y lo instalamos con ruby:
1 |
ruby bin/setup |
El propio instalador se encargará de descargar e instalar las dependencias necesarias para su correcto funcionamiento.
Completada la instalación copiaremos la plantilla de base de datos y de credenciales:
1 2 |
cp config/database.yml.template config/database.yml cp config/secrets.yml.template config/secrets.yml |
Continuaremos editando el fichero secrets.yml
1 |
vi config/secrets.yml |
Y añadimos el token para el entorno de desarrollo de al menos 20 caracteres, por ejemplo con el siguiente:
1 2 |
development: secret_key_base: asdflkjasdlfkjasldfkj |
A continuación arrancaremos el servicio:
1 |
bundle exec rails server |
Actualizaremos la base de datos al entorno deseado, development en nuestro caso:
1 |
bin/rails db:migrate RAILS_ENV=development |
Y accederemos a dradis a través del navegador y la url por defecto:
1 |
http://localhost:3000 |
Donde se verá una imagen como la siguiente:
Crearemos una contraseña y ya accederemos al servidor de Dradis. Introduciremos posteriormente el usuario “admin” por defecto y la contraseña configurada y ya estamos dentro de nuestro servidor Dradis:
Ahora, como vemos en la anterior captura, vemos tres opciones principales en el menú de la izquierda, “All issues, Methodologies y Trash” por lo que utilizaremos estas opciones en función de la tarea a realizar.
All Issues (todos los problemas): en esta sección tenemos muchas opciones, como puede ser agregar cualquier fichero manualmente, cargar la salida o importar el resultado de la biblioteca. Estas opciones puede ayudar a importar el resultado de cualquier herramienta a dradis.
Metodologías: en esta sección se pueden crear diferentes metodologías a utilizar. Básicamente puede reducirse el campo en tres, que son:
- Manual de metodología de pruebas de seguridad de código abierto (OSSTMM)
- Estándar de ejecución de pruebas de penetración (PTES)
- Instituto Nacional de Estándares y Tecnología (NIST)
Podemos decir que las tres son buenas metodologías, pero PTES y NIST proporcionan un poco de más de flexibilidad durante las pruebas de penetración. Además se alinean más estrechamente con lo que se enseña en un curso de seguridad, como puede ser SANS. Dicho esto, cada vez que necesitemos agregar alguna metodología, podemos utilizar esta opción como referencia.
Trash (papelera): Como bien indica el nombre, en esta sección veremos los diferentes elementos que hayan sido eliminados.
Comenzaremos ahora a trabajar con Dradis. Crearemos primero un nuevo nodo desde la pestaña “Nodes”. Crearemos un primer nodo y posteriormente un subnodo para agregar una subrama debajo de un nodo creado. Seguir el mismo proceso para crear tantos nodos y subnodos como necesiten para sus pruebas.
Ahora vamos a subir nuestro primer fichero. Pulsaremos sobre el botón superior “Upload output from tool” y veremos una ventana como la siguiente:
Seleccionaremos la herramienta y subiremos el fichero como vemos a continuación:
Y, si volvemos al menú de nodos, nos aparecerá el fichero subido en el panel izquierdo, desde el cual podremos visualizar los datos obtenidos desde el fichero subido.
Ahora ya sólo queda que investigueis por vuestra cuenta el potencial y la utilidad de esta herramienta.
Como siempre, estos tutoriales son simplemente para ayudar a descubrir nuevas herramientas que hagan más sencillo el día a día. Por nuestra parte no nos hacemos responsables de cualquier uso no debido mediante alguna de las entradas publicadas en este blog.
Y esto ha sido todo por el momento. Dradis es una herramienta muy útil que hará la vida de todo pentester mucho más sencilla.
Pueden exponer sus comentarios, ideas y/o dudas y nos vemos en el siguiente post.