Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
SentinelNav — SentinelNav: ferramenta de visualização e forense binária em Python puro, sem dependências. | Kitploit
Ferramentas/GitHubGitHub/smolfiddle/sentinelnav
Forensia de MemóriaEngenharia ReversaAnálise ForenseRecuperação de DadosForensia DigitalAnálise de BináriosAnálise de Firmware
GitHubsmolfiddle/sentinelnav

SentinelNav

SentinelNav: ferramenta de visualização e forense binária em Python puro, sem dependências.

Ver Repositório
146816há 10 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

SentinelNav

SentinelNav é uma ferramenta de visualização e forense binária puramente em Python, com zero dependências. Ela transforma dados binários em um mapa espectral interativo, permitindo que analistas identifiquem visualmente estruturas de arquivos, anomalias de entropia, seções de código e possíveis blobs criptográficos.

Ela combina um backend de multiprocessamento para varredura rápida de arquivos com um frontend baseado em web local para exploração interativa, inspeção hexadecimal e identificação de arquitetura.

First screenshot Second screenshot


Início Rápido

Como o SentinelNav depende apenas da Biblioteca Padrão do Python, nenhuma instalação de pacotes externos é necessária.

  1. Salve o script como sentinelnav.py.
  2. Execute o script no modo interativo:
python3 sentinelnav.py
  1. Arraste e solte um arquivo alvo na janela do terminal quando solicitado.
  2. Abra seu navegador em http://localhost:8000.


Funcionalidades

Análise Principal

  • Zero Dependências: Executa em qualquer instalação padrão do Python 3 sem pip install.
  • Modos de Varredura Híbridos:
    • Bloco Fixo: Divide arquivos em pedaços consistentes (ex.: 1024 bytes). Ideal para binários e imagens de disco.
    • Sentinel: Divide arquivos com base em um delimitador (ex.: 0x0A para logs ou protocolos baseados em texto).
  • Identificação de Arquitetura (ArchID):
    • Detecta cabeçalhos de arquivos (MZ, ELF, Mach-O, PDF, PNG, JPEG).
    • Realiza análise heurística de frequência para adivinhar a arquitetura da CPU (x86, x64, ARM64) em blocos binários brutos.
  • Detecção de Entropia e Anomalias:
    • Calcula a entropia de Shannon por bloco.
    • Detecta eventos de 'Fluxo': Picos súbitos (início de criptografia/código) ou quedas (fim de fluxos de dados).

Visualização

  • Mapeamento Espectral: Mapeia a distribuição de bytes para cores RGB para distinguir visualmente tipos de dados (Texto vs. Código vs. Preenchimento).
  • Renderização Canvas: Renderização de canvas HTML5 de alto desempenho capaz de lidar com milhões de blocos via paginação.
  • Inspetor Hex Ao Vivo: Clique em qualquer bloco para visualizar o dump hexadecimal bruto, decodificação ASCII e análise ArchID.
  • Exportação BMP: Gere uma imagem completa de mapa de calor do arquivo para relatórios externos.

Performance

  • Processamento Paralelo: Utiliza concurrent.futures.ProcessPoolExecutor para utilizar todos os núcleos da CPU durante a varredura.
  • Backend SQLite: Armazena resultados de análise em um banco de dados SQLite temporário para permitir paginação e consulta eficientes de arquivos grandes (GB+).

Design da Arquitetura

SentinelNav segue uma arquitetura Produtor-Consumidor com uma interface Cliente-Servidor.

1. O Mecanismo Forense (Backend)

  • Interface de Varredura:
    • Abstrai o processo de leitura do arquivo.
    • FixedScanner: Lê N bytes iterativamente.
    • SentinelScanner: Lê em um buffer e produz blocos ao encontrar bytes específicos (ex.: bytes nulos ou novas linhas).
  • Processo Worker:
    • O Processor inicia um pool de workers com base na contagem de CPUs.
    • FastMath: Calcula entropia e contagens de frequência de bytes (Dados Espectrais).
    • Heurística: Determina se um bloco é pesado em ASCII, pesado em Nulo ou pesado em High-Bit.
  • Mecanismo de Dados (Armazenamento):
    • Um banco de dados sqlite3 efêmero cria um índice estruturado do arquivo binário.
    • Armazena: Offset, Comprimento, Entropia, valores RGB, Pontuações de Anomalias.
    • Isso permite que a ferramenta lide com arquivos maiores que a RAM disponível, paginando dados sob demanda.

2. O Servidor Web

  • Implementa http.server.ThreadingMixIn para manipulação concorrente de requisições HTTP.
  • Endpoints da API:
    • /data: Retorna páginas JSON de dados de blocos (Cor + Entropia).
    • /read: dumps hexadecimais específicos para o painel do Inspetor.
    • /search: Varre o arquivo físico em busca de sequências hexadecimais.
    • /download: Extrai blobs binários brutos ou gera a visualização BMP.

3. O Frontend

  • Aplicação de Página Única (SPA) embutida diretamente no script Python.
  • Renderização: Utiliza a API HTML5 Canvas para renderização perfeita de blocos pixel a pixel.
  • Navegação: Implementa lógica de navegação espacial para mapear entradas de teclado (WASD) para o sistema de coordenadas da grade.

Guia de Mapeamento Visual

A ferramenta usa um algoritmo RGB específico para representar tipos de dados binários.

CorComponenteSignificado
VERMELHOHigh BitBytes 0x80 - 0xFF. Indica código de máquina compilado, dados compactados, blobs criptografados ou dados de imagem.
VERDEASCIIBytes 0x20 - 0x7E. Indica texto simples, código fonte, JSON, XML ou logs.
AZULControleBytes 0x00 - 0x1F. Indica preenchimento nulo, cabeçalhos ou caracteres de controle de protocolo.

Padrões Comuns:

  • Verde Brilhante: Arquivo de texto ou código fonte.
  • Roxo/Rosa: Código e dados misturados (Seções executáveis).
  • Azul Sólido: Preenchimento preenchido com zeros ou espaço vazio.
  • Estático/Cinza: Ruído de alta entropia (Dados criptografados).

Instalação

Pré-requisitos

  • Python 3.6 ou superior.

Configuração

Nenhuma biblioteca precisa ser instalada. Basta baixar o arquivo.

# Clone ou baixe o script
wget https://raw.githubusercontent.com/smolfiddle/SentinelNav/main/sentinelnav.py

Uso e Argumentos de Linha de Comando

Você pode executar a ferramenta interativamente ou via argumentos de linha de comando.

Assistente Interativo

Executar sem argumentos inicia o assistente:

python3 sentinelnav.py

Argumentos de CLI

Para automação ou usuários avançados, use flags para pular o assistente.

python3 sentinelnav.py <arquivo_alvo> [opções]
ArgumentoDescriçãoPadrão
--modeModo de varredura: fixed ou sentinel.fixed
--sizeTamanho do bloco (em bytes) para modo fixo, ou buffer máximo para sentinela.1024
--hexO byte delimitador para modo sentinela (ex.: 0A para nova linha).00
--portA porta do servidor web.8000
--windowTamanho da janela deslizante para cálculos de detecção de anomalias.5

Exemplo: Escaneie uma imagem de firmware com resolução de 256 bytes na porta 8080:

python3 sentinelnav.py firmware.bin --size 256 --port 8080

Controles de Teclado

Uma vez que a interface web esteja carregada, os seguintes controles estão disponíveis:

Baixar ferramenta