Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
Enviar
FerramentasBlog
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
EhTrace — ATrace é uma ferramenta para rastrear a execução de binários no Windows. | Kitploit
Ferramentas/GitHubGitHub/k2/ehtrace
Análise Dinâmica (Sandboxing)Análise de CódigoExploraçãoEngenharia ReversaDepuradoresFuzzingAnálise de Binários
GitHubk2/ehtrace

EhTrace

ATrace é uma ferramenta para rastrear a execução de binários no Windows.

Ver Repositório
2435017há 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

EhTrace

LOGO

EhTrace (pronuncia-se "ATrace") é um framework de rastreamento e instrumentação binária de alto desempenho para Windows. Permite análise profunda de executáveis Windows em tempo de execução sem exigir código-fonte, modificações binárias ou depuração tradicional.

Visão Geral

EhTrace aproveita o Vectored Exception Handling (VEH) do Windows e técnicas de "block-stepping" para fornecer rastreamento abrangente da execução com sobrecarga mínima. Ao contrário de ferramentas tradicionais de depuração ou instrumentação, o EhTrace opera inteiramente no processo e não requer patches nos binários alvo.

Principais Funcionalidades

  • Modificação Binária Zero: Rastreie a execução sem alterar o binário alvo
  • Alto Desempenho: Block stepping em vez de single stepping atinge ~43 milhões de eventos por segundo
  • Cobertura de Código Completa: Detecção e rastreamento automático de blocos básicos
  • Monitoramento de Estado dos Registradores: Capture e analise estados dos registradores durante a execução
  • Nenhum Modo de Depuração Necessário: Funciona sem habilitar capacidades de depuração/trace MSR da CPU
  • Operação Intraprocesso: Sobrecarga mínima de troca de contexto comparado a depuradores tradicionais
  • Múltiplos Modos de Instrumentação: Suporte para vários cenários de rastreamento e análise

Capacidades Principais

  • Análise de Fluxo de Execução: Rastreie caminhos de execução do programa e fluxo de controle
  • Mapeamento de Cobertura de Código: Gere relatórios abrangentes de cobertura de código
  • Defesa contra RoP: Detecte e previna ataques de Programação Orientada a Retorno através do balanceamento call/ret
  • Key Escrow: Capacidades de interceptação e custódia de chaves criptográficas
  • Integração com Fuzzing: Instrumentação de fuzzing compatível com AFL (AWinAFL)
  • Resolução de Símbolos: Carregamento e resolução automática de símbolos via DIA2

Arquitetura

flowchart TB
    subgraph Target["🎯 Processo Alvo"]
        direction TB
        APP[Código da Aplicação]
        VEH[Vectored Exception Handler]
        style APP fill:#e1f5ff,stroke:#01579b,stroke-width:3px,color:#000
        style VEH fill:#fff3e0,stroke:#e65100,stroke-width:3px,color:#000
    end
    
    subgraph EhTrace["⚡ Motor EhTrace"]
        direction TB
        BLOCK[Block Stepper]
        DISASM[Desmontador Capstone]
        FIGHTERS[BlockFighters]
        CTX[Gerenciador de Contexto]
        style BLOCK fill:#f3e5f5,stroke:#4a148c,stroke-width:3px,color:#000
        style DISASM fill:#e8f5e9,stroke:#1b5e20,stroke-width:3px,color:#000
        style FIGHTERS fill:#ffebee,stroke:#b71c1c,stroke-width:3px,color:#000
        style CTX fill:#e0f2f1,stroke:#004d40,stroke-width:3px,color:#000
    end
    
    subgraph Output["📊 Saída de Análise"]
        direction TB
        SHMEM[Log de Memória Compartilhada]
        GRAPHS[Gráficos Visuais]
        REPORTS[Relatórios de Cobertura]
        style SHMEM fill:#fce4ec,stroke:#880e4f,stroke-width:3px,color:#000
        style GRAPHS fill:#f1f8e9,stroke:#33691e,stroke-width:3px,color:#000
        style REPORTS fill:#fff8e1,stroke:#f57f17,stroke-width:3px,color:#000
    end
    
    APP -->|Exceção| VEH
    VEH -->|Passo Único| BLOCK
    BLOCK -->|Instrução| DISASM
    DISASM -->|Análise| FIGHTERS
    FIGHTERS -->|Estado| CTX
    CTX -->|Eventos| SHMEM
    SHMEM -->|Dados| GRAPHS
    SHMEM -->|Dados| REPORTS
    
    style Target fill:#e3f2fd,stroke:#0d47a1,stroke-width:4px
    style EhTrace fill:#f3e5f5,stroke:#6a1b9a,stroke-width:4px
    style Output fill:#e8f5e9,stroke:#2e7d32,stroke-width:4px

Princípios Operacionais Principais

O EhTrace opera através de um pipeline sofisticado:

  1. 🛡️ Tratamento de Exceções: Registro de um Vectored Exception Handler (VEH)
  2. 👣 Block Stepping: Uso de exceções de passo único nos limites de blocos básicos
  3. 🔍 Desmontagem: Aproveitamento do Capstone para análise de instruções em tempo real
  4. 📝 Registro: Escrita de eventos de execução em memória compartilhada para análise externa
  5. ⚔️ Fighting: Aplicação de "BlockFighters" configuráveis para tarefas de segurança e análise

O framework mantém o estado de execução por thread usando estruturas de contexto especializadas e fornece hooks para instrumentação personalizável.

Desempenho

graph LR
    subgraph Traditional["🐌 Depurador Tradicional"]
        T1[Passo Único]
        T2[Troca de Contexto]
        T3[Modo Kernel]
        T4[~1M eventos/seg]
        style T1 fill:#ffcdd2,stroke:#c62828,stroke-width:2px,color:#000
        style T2 fill:#ffcdd2,stroke:#c62828,stroke-width:2px,color:#000
        style T3 fill:#ffcdd2,stroke:#c62828,stroke-width:2px,color:#000
        style T4 fill:#ef5350,stroke:#b71c1c,stroke-width:3px,color:#fff
    end
    
    subgraph EhTrace["⚡ EhTrace"]
        E1[Block Step]
        E2[Intraprocesso]
        E3[Modo Usuário]
        E4[~43M eventos/seg]
        style E1 fill:#c8e6c9,stroke:#2e7d32,stroke-width:2px,color:#000
        style E2 fill:#c8e6c9,stroke:#2e7d32,stroke-width:2px,color:#000
        style E3 fill:#c8e6c9,stroke:#2e7d32,stroke-width:2px,color:#000
        style E4 fill:#66bb6a,stroke:#1b5e20,stroke-width:3px,color:#fff
    end
    
    T1 --> T2 --> T3 --> T4
    E1 --> E2 --> E3 --> E4
    
    style Traditional fill:#ffebee,stroke:#d32f2f,stroke-width:3px
    style EhTrace fill:#e8f5e9,stroke:#388e3c,stroke-width:3px

O EhTrace atinge alto desempenho através de várias otimizações:

  • 🎯 Branch stepping vs single stepping: Rastrear apenas nos limites de blocos básicos
  • ⚡ Operação intraprocesso: Sem trocas de contexto de depurador
  • ⏱️ Gerenciamento de estado temporal: O VEH mantém naturalmente o estado de execução
  • 💾 Registro eficiente: Buffers de memória compartilhada para gravação de eventos de alta taxa de transferência

📊 Benchmark: 428.833.152 eventos (32 bytes cada) capturados em 10 segundos = ~43M eventos/seg

Exemplo de Saída

Demonstração do CSW16 rastreando notepad.exe sem símbolos:

Flame graph without symbols

Grafo de blocos básicos com desmontagem Capstone:

BB graph with disassembly

Visualização de cobertura de código:

BB graph coverage

Componentes

Baixar ferramenta