Visor TUI de BBOT

Una interfaz de terminal autocontenida para navegar y analizar los resultados de escaneos de BBOT.

Características
- 🚀 Cero configuración - Un único archivo autoinstalable, sin dependencias manuales
- 🔴 Actualización en vivo - Se actualiza automáticamente mientras los escaneos están en ejecución con detección precisa de estado
- 🎯 Detección inteligente de estado - Identifica con precisión escaneos EN EJECUCIÓN, FINALIZADOS e INTERRUMPIDOS
- 📋 Explorador de escaneos - Navega entre múltiples escaneos con contadores separados de vulnerabilidades/hallazgos e indicadores de estado
- 📦 Gestión de archivos - Comprime escaneos antiguos para ahorrar espacio, restáuralos cuando sea necesario
- 📝 Seguimiento de trabajo - Anota vulnerabilidades y hallazgos con estado, prioridad y notas
- 🔍 Vistas separadas - Pestañas dedicadas para vulnerabilidades (ordenadas por severidad) y hallazgos
- 🌳 Árbol de descubrimiento - Vista jerárquica que muestra las relaciones padre-hijo entre eventos
- 🌐 Árbol de subdominios - Vista jerárquica de subdominios descubiertos (cuando estén disponibles)
- 📊 Estadísticas enriquecidas - Tablas atractivas con distribución de eventos, análisis de alcance y métricas de flujo de trabajo
- 🔎 Explorador de eventos - Filtra, busca e inspecciona todos los eventos del escaneo
- ⚙️ Visor de configuración - Visualiza la configuración de preset.yml
Inicio rápido
# Copy to server and run (auto-installs on first run)
./bbot-ui
# Or specify custom path
./bbot-ui /path/to/scans
La primera ejecución crea .bbot_ui_venv/ e instala las dependencias. Las ejecuciones posteriores se lanzan al instante.
Uso
./bbot-ui # Default: ~/.bbot/scans
./bbot-ui /path/to/scans # Browse all scans in directory
./bbot-ui ~/.bbot/scans/scan-name # View specific scan
Opciones de línea de comandos
./bbot-ui --help # Show all options
./bbot-ui --scan-interval 5 # Refresh scan view every 5 seconds
./bbot-ui --list-interval 10 # Refresh scan list every 10 seconds
Opciones disponibles:
--scan-interval SECONDS - Intervalo de actualización para la vista de detalle del escaneo (predeterminado: 2.0)
--list-interval SECONDS - Intervalo de actualización para la vista de lista de escaneos (predeterminado: 3.0)
La configuración se guarda automáticamente en ~/.bbot_ui_config.json y se usa como valores predeterminados en futuras sesiones.
Interfaz
Lista de escaneos
- Inicio instantáneo - La interfaz aparece en <200ms, los escaneos se cargan progresivamente
- Explora todos los escaneos en una tabla con columnas: Nombre del escaneo, Estado, Eventos, Vulns, Hallazgos, Última modificación
- El encabezado muestra el total de escaneos, los contadores de vulnerabilidades/hallazgos y el número de escaneos en ejecución
- La columna Estado muestra el estado del escaneo en tiempo real:
- ● RUNNING (verde) - Escaneo en ejecución activa con proceso bbot detectado
- ⚠ INTERRUPTED (amarillo) - El escaneo fue detenido/interrumpido (sin proceso activo)
- ✓ FINISHED (azul) - El escaneo finalizó correctamente
- ○ CHECKING... (atenuado) - Estado en verificación (aparece durante la carga progresiva)
- Las columnas Vulns y Hallazgos muestran el indicador ⚠ para escaneos con vulnerabilidades/hallazgos
- Los escaneos aparecen uno a uno con actualizaciones de estado en vivo durante la carga inicial
- Se actualiza automáticamente cada 3 segundos para mostrar nuevos escaneos y cambios de estado
↑/↓ o j/k para navegar, Enter para abrir, r para actualizar manualmente, a para archivar, d para eliminar
- Pulsa
Tab para ver los escaneos archivados
Lista de archivos
- Explora todos los escaneos archivados (archivos .zip comprimidos)
- Muestra: Nombre del archivo, Tamaño, Eventos, Vulns, Hallazgos, Fecha de archivado
u para desarchivar (restaurar), d para eliminar permanentemente
- Pulsa
Tab, q o Escape para volver a la lista de escaneos
Gestión de archivos
Ahorra espacio en disco comprimiendo escaneos antiguos en archivos ZIP:
Archivar un escaneo:
- Desde la lista de escaneos, navega hasta el escaneo que quieras archivar
- Pulsa
a para archivar
- Confirma la operación
- La carpeta del escaneo se comprime en un archivo .zip y la carpeta original se elimina
- El archivo aparece en la lista de archivos (pulsa
Tab para verlo)
Restaurar un archivo:
- Pulsa
Tab para ver la lista de archivos
- Navega hasta el archivo que quieras restaurar
- Pulsa
u para desarchivar
- Confirma la operación
- El archivo se extrae y el archivo .zip se elimina
- Pulsa
q para volver a la lista de escaneos y ver el escaneo restaurado
Características de seguridad:
- No se pueden archivar escaneos EN EJECUCIÓN
- La integridad del archivo se verifica antes de eliminar la carpeta de origen
- La extracción se verifica antes de eliminar el archivo
- Todas las operaciones requieren confirmación
- Si algún paso falla, la operación se revierte de forma segura
Eliminar escaneos/archivos:
- Desde la lista de escaneos: Pulsa
d para eliminar permanentemente una carpeta de escaneo
- Desde la lista de archivos: Pulsa
d para eliminar permanentemente un archivo
- No se pueden eliminar escaneos EN EJECUCIÓN
- Requiere confirmación (la acción es permanente e irreversible)
- Se perderán todos los datos del escaneo
Seguimiento de trabajo y anotaciones
Realiza un seguimiento de tu flujo de trabajo de seguridad anotando vulnerabilidades y hallazgos con estado, prioridad y notas.
Cómo funciona:
- Las anotaciones se almacenan en
.bbot_ui_annotations.json junto a cada escaneo
- Hace referencia a los eventos por UUID; nunca modifica el
output.json original de BBOT
- Se incluyen automáticamente en los archivos para copia de seguridad/restauración
- Sobrevive a nuevos escaneos del mismo objetivo
Anotar una vulnerabilidad/hallazgo:
- Navega a la pestaña Vulnerabilidades o Hallazgos
- Selecciona un elemento (teclas de flecha o j/k)
- Pulsa
t para abrir el diálogo de anotación
- Establece estado, prioridad (opcional) y notas
- Haz clic en Guardar o pulsa Enter
Atajos rápidos:
- Pulsa
x para marcar el elemento seleccionado como Falso Positivo
- Pulsa
i para marcar el elemento seleccionado como Riesgo Aceptado
- Estos conservan la prioridad y las notas existentes mientras actualizan el estado
Opciones de estado:
- 🆕 Nuevo - Estado predeterminado para elementos no anotados
- 🔍 Investigando - Analizando actualmente
- ✓ Confirmado - Verificado como problema real
- ✗ Falso Positivo - No es una vulnerabilidad real
- 📢 Reportado - Enviado al equipo de seguridad
- 🔧 Corregido - El problema ha sido resuelto
- ⚠ Riesgo Aceptado - Conocido pero aceptado
Niveles de prioridad (opcional):
- 🔴 Crítico - Requiere atención inmediata
- 🟠 Alta - Importante, atender pronto
- 🟡 Media - Prioridad normal
- 🟢 Baja - Problema menor