Visualizador TUI do BBOT

Uma interface de terminal auto-contida para navegar e analisar resultados de varredura do BBOT.

Funcionalidades
- 🚀 Configuração Zero – Um único arquivo auto-instalável, sem dependências manuais
- 🔴 Atualização ao Vivo – Auto-atualiza enquanto as varreduras estão em execução com detecção precisa de status
- 🎯 Detecção Inteligente de Status – Identifica com precisão varreduras em EXECUÇÃO, FINALIZADAS e INTERROMPIDAS
- 📋 Navegador de Varreduras – Navegue por múltiplas varreduras com contagens separadas de vulnerabilidades/descobertas e indicadores de status
- 📦 Gerenciamento de Arquivos Mortos – Comprima varreduras antigas para economizar espaço, restaure quando necessário
- 📝 Acompanhamento de Trabalho – Anote vulnerabilidades e descobertas com status, prioridade e notas
- 🔍 Visualizações Separadas – Abas dedicadas para vulnerabilidades (ordenadas por gravidade) e descobertas
- 🌳 Árvore de Descoberta – Visão hierárquica mostrando relacionamentos pais-filhos de eventos
- 🌐 Árvore de Subdomínios – Visão hierárquica de subdomínios descobertos (quando disponível)
- 📊 Estatísticas Ricas – Tabelas bonitas com distribuição de eventos, análise de escopo e métricas de fluxo de trabalho
- 🔎 Explorador de Eventos – Filtre, pesquise e inspecione todos os eventos da varredura
- ⚙️ Visualizador de Configuração – Veja a configuração preset.yml
Início Rápido
# Copie para o servidor e execute (auto-instala na primeira execução)
./bbot-ui
# Ou especifique um caminho personalizado
./bbot-ui /caminho/para/varreduras
A primeira execução cria .bbot_ui_venv/ e instala as dependências. Execuções subsequentes iniciam instantaneamente.
Uso
./bbot-ui # Padrão: ~/.bbot/scans
./bbot-ui /caminho/para/varreduras # Navegue por todas as varreduras no diretório
./bbot-ui ~/.bbot/scans/nome-da-varredura # Visualizar varredura específica
Opções de Linha de Comando
./bbot-ui --help # Mostrar todas as opções
./bbot-ui --scan-interval 5 # Atualizar visualização da varredura a cada 5 segundos
./bbot-ui --list-interval 10 # Atualizar lista de varreduras a cada 10 segundos
Opções disponíveis:
--scan-interval SEGUNDOS – Intervalo de atualização para a visualização detalhada da varredura (padrão: 2.0)
--list-interval SEGUNDOS – Intervalo de atualização para a lista de varreduras (padrão: 3.0)
As configurações são salvas automaticamente em ~/.bbot_ui_config.json e usadas como padrão em sessões futuras.
Interface
Lista de Varreduras
- Inicialização instantânea – UI aparece em <200ms, as varreduras carregam progressivamente
- Navegue por todas as varreduras em uma tabela com colunas: Nome da Varredura, Status, Eventos, Vulnerabilidades, Descobertas, Última Modificação
- O cabeçalho mostra total de varreduras, contagens de vulnerabilidades/descobertas e contagem de varreduras em execução
- Coluna de Status mostra o estado da varredura em tempo real:
- ● EM EXECUÇÃO (verde) – Varredura ativa com processo bbot detectado
- ⚠ INTERROMPIDA (amarelo) – Varredura foi parada/interrompida (sem processo ativo)
- ✓ FINALIZADA (azul) – Varredura concluída com sucesso
- ○ VERIFICANDO... (escuro) – Status sendo verificado (aparece durante o carregamento progressivo)
- Colunas de Vulnerabilidades e Descobertas mostram indicador ⚠ para varreduras com vulnerabilidades/descobertas
- As varreduras aparecem uma a uma com atualizações de status ao vivo durante o carregamento inicial
- Auto-atualiza a cada 3 segundos para mostrar novas varreduras e mudanças de status
↑/↓ ou j/k para navegar, Enter para abrir, r para atualizar manualmente, a para arquivar, d para excluir
- Pressione
Tab para ver varreduras arquivadas
Lista de Arquivos
- Navegue por todas as varreduras arquivadas (arquivos .zip compactados)
- Mostra: Nome do Arquivo, Tamanho, Eventos, Vulnerabilidades, Descobertas, Data de Arquivamento
u para desarquivar (restaurar), d para excluir permanentemente
- Pressione
Tab, q ou Escape para retornar à lista de varreduras
Gerenciamento de Arquivos
Economize espaço em disco comprimindo varreduras antigas em arquivos ZIP:
Arquivando uma varredura:
- Na lista de varreduras, navegue até a varredura que deseja arquivar
- Pressione
a para arquivar
- Confirme a operação
- A pasta da varredura é comprimida em um arquivo .zip e a pasta original é excluída
- O arquivo aparece na lista de arquivos (pressione
Tab para visualizar)
Restaurando um arquivo:
- Pressione
Tab para ver a lista de arquivos
- Navegue até o arquivo que deseja restaurar
- Pressione
u para desarquivar
- Confirme a operação
- O arquivo é extraído e o .zip é excluído
- Pressione
q para retornar à lista de varreduras e ver a varredura restaurada
Recursos de segurança:
- Não é possível arquivar varreduras EM EXECUÇÃO
- A integridade do arquivo é verificada antes de excluir a pasta fonte
- A extração é verificada antes de excluir o arquivo
- Todas as operações exigem confirmação
- Se alguma etapa falhar, a operação é revertida com segurança
Excluindo varreduras/arquivos:
- Da lista de varreduras: Pressione
d para excluir permanentemente uma pasta de varredura
- Da lista de arquivos: Pressione
d para excluir permanentemente um arquivo
- Não é possível excluir varreduras EM EXECUÇÃO
- Exige confirmação (a ação é permanente e irreversível)
- Todos os dados da varredura serão perdidos
Acompanhamento de Trabalho e Anotações
Acompanhe seu fluxo de trabalho de segurança anotando vulnerabilidades e descobertas com status, prioridade e notas.
Como funciona:
- As anotações são armazenadas em
.bbot_ui_annotations.json ao lado de cada varredura
- Referencia eventos por UUID – nunca modifica o
output.json original do BBOT
- Incluídas automaticamente nos arquivos para backup/restauração
- Sobrevive a re-varreduras do mesmo alvo
Anotando uma vulnerabilidade/descoberta:
- Navegue até a aba Vulnerabilidades ou Descobertas
- Selecione um item (setas ou j/k)
- Pressione
t para abrir o diálogo de anotação
- Defina status, prioridade (opcional) e notas
- Clique em Salvar ou pressione Enter
Atalhos rápidos:
- Pressione
x para marcar o item selecionado como Falso Positivo
- Pressione
i para marcar o item selecionado como Risco Aceito
- Estes preservam a prioridade e notas existentes enquanto atualizam o status
Opções de status:
- 🆕 Novo – Status padrão para itens não anotados
- 🔍 Investigando – Analisando atualmente
- ✓ Confirmado – Verificado como problema real
- ✗ Falso Positivo – Não é uma vulnerabilidade real
- 📢 Relatado – Enviado para a equipe de segurança
- 🔧 Corrigido – Problema foi resolvido
- ⚠ Risco Aceito – Conhecido, mas aceito
Níveis de prioridade (opcional):
- 🔴 Crítico – Requer atenção imediata
- 🟠 Alta – Importante, resolver em breve
- 🟡 Média – Prioridade normal
- 🟢 Baixa – Problema menor