
Control de progreso de Pentest/BugBounty con módulos de escaneo
Control de alcance, escáner de alcance y rastreador de progreso para trabajar más fácilmente en un proyecto de bug bounty o pentest
Anatoly Ivanov de Positive Technologies
La herramienta fomenta un trabajo más metódico en pentest/bugbounty, rastreando el progreso y la información general de los escaneos.
Puede lanzar
contra el alcance en el que trabajas y almacena los datos en un formato práctico. Realiza un filtrado útil de los datos del proyecto, por ejemplo:
La configuración básica mediante docker-compose funcionará en cualquier sistema que tenga instaladas las dependencias docker y docker-compose
Si no tienes docker instalado, entonces
sudo apt install docker.io
Si tienes docker configurado, entonces para Ubuntu/Debian simplemente
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
git clone https://github.com/c0rvax/project-black
cd project-black
sudo docker-compose up
Si ves algunos errores de SQL, intenta detener docker-compose (Ctrl + C una vez y espera a que se apague correctamente) y ejecuta docker-compose up
Esto puede tomar algo de tiempo, ¡pero eso es todo! Otras distribuciones deberían tener instrucciones muy similares.
Ahora ve a http://localhost:5000, introduce las credenciales. Se pueden encontrar en https://github.com/c0rvax/project-black/blob/master/config/config_docker.yml bajo application
Para una configuración más compleja o si algo falló, consulta la wiki.
Ninguno de los contenedores docker restringe la cantidad de uso de recursos, eso queda bajo tu responsabilidad, sin embargo, puedes cambiar la cantidad de tareas paralelas para cada worker por separado. Consulta la wiki para eso
Después de la configuración, crea un proyecto y dirígete a la página correspondiente.

Ahora seguiremos los pasos básicos que puedes hacer dentro de la aplicación
Supongamos que estamos evaluando hackerone.com y todos sus subdominios. Escribe hackerone.com en el campo add scope y presiona Add to scope

Se ha agregado el punto de entrada.
Hay otras formas de agregar alcance, consulta la wiki
Todas las tareas pueden leer parámetros del usuario, sin embargo, lanzar con algunas opciones no mostrará ningún resultado nuevo ya que es bastante difícil analizar todas las posibles salidas de un programa. Así que para empezar, intenta trabajar duplicando las opciones de este manual.
Las opciones disponibles se pueden encontrar en esta página
Haz clic en el botón azul Launch task.

Aparecerá una ventana emergente con parámetros.

Se recomienda marcar la casilla All_top_level_domains y en argv ingresar -ip y hacer clic en el botón Fire!.

Esto lanzaría amass -d hackerone.com -ip. Nota que en este caso no especificamos ningún dominio. Esto se debe a que la casilla All_top_level_domains significa buscar en el alcance almacenado en la base de datos. Así que el programa ve que hackerone.com fue agregado al alcance y lanza amass contra él.
Al finalizar, los nuevos datos se agregan automáticamente al alcance.
Ahora ve a la pestaña IPs. Haz clic en el ya conocido botón Launch task y elige masscan.
Lanzaremos un escaneo rápido, usando el botón Top N ports. Esto autocompleta el parámetro argv. Presiona Fire!

Los resultados se descargan automáticamente de la base de datos.

Ahora haz clic en Launch task y elige nmap only open. Esto encontrará todos los puertos abiertos que existen en la base de datos y ejecutará nmap solo contra ellos.
Haz clic en Banner y Fire.

El banner detectado aparecerá automáticamente

Lanza dirsearch contra todas las IPs y todos los puertos abiertos (se probarán tanto HTTP como HTTPS)
En la pestaña IPs, haz clic en Launch task y selecciona dirsearch. Completa las extensiones que quieras probar y haz clic en Fire!
Puedes lanzar dirsearch contra hosts (no IPs) en la pestaña Hosts.
Si no hay puertos, dirsearch ni siquiera se iniciará. Así que primero, asegúrate de haber lanzado nmap o masscan para descubrir puertos abiertos.
Generalmente hay tres formas de verificar los resultados:
Esas son dos pestañas. Funcionan de la misma manera, así que nos detendremos en Hosts.

Puedes ver una lista de hosts, sus puertos y archivos. También puedes editar un comentario para ese host.
La parte importante aquí es el cuadro de filtrado.

Puedes agregar diferentes filtros usando el campo mostrado arriba. Escribe el filtro que desees (hay un asistente para eso) y presiona Shift + Enter

También puedes ver detalles de un host o IP específicos. Presiona el botón de las gafas

Allí verás el resultado de dirsearch para cada puerto abierto en ese host
El botón Dirsearch list abrirá una nueva ventana mostrando todos los archivos encontrados para cada dirsearch que se haya lanzado en este proyecto.
¡Los botones Launch task de IPs y Hosts son diferentes! El botón en la página de IPs iniciará contra todas las IPs dentro del proyecto actual, mientras que el botón en la página de Hosts lanzará contra hosts.
Para lanzar una tarea contra algunos hosts, debes
Ejemplo:

Se han aplicado algunos filtros. Si ahora lanzamos dirsearch, se lanzará contra los hosts que correspondan a los filtros utilizados.