Um editor hexadecimal para engenheiros reversos, programadores e quem trabalha às 3 da manhã
Apoio
- É possível apoiar via GitHub Sponsors, Patreon e PayPal
Capturas de tela
- Capturas de tela adicionais disponíveis
Recursos
Visualização hexadecimal avançada
- Patching de bytes, gerenciamento de patches e Undo/Redo ilimitado
- Copiar bytes em vários formatos
- Busca simples por strings e hexadecimal
- Ir para o início, fim ou posição atual do cursor
- Destaque colorido
- Exibição em vários tipos de dados
- Decodificação de dados em ASCII e codificações personalizadas
- Visualização de dados paginados
Linguagem de padrões semelhante a C++
- Carregamento automático com base em tipo MIME e valores mágicos
- Suporte à visualização de vários tipos de dados
- Mensagens de erro úteis, realce de sintaxe e indicação de erros
Suporte a temas
- Modo noturno por padrão, com suporte a cores e estilos personalizados
- Suporte a fontes personalizadas
Importação e exportação de dados
- Arquivos Base64, patches IPS e IPS32, relatórios em Markdown
Inspetor de dados
- Interpretação de dados em vários tipos
- Copiar e modificar bytes
- Suporte à adição de novos tipos de dados
Pré-processador de dados baseado em nós
- Modificação, descriptografia e decodificação de dados
- Suporte à adição de nós personalizados
Carregamento de várias fontes de dados
- Arquivos locais, disco raw, servidor GDB, dados Intel Hex e Motorola SREC, memória de processo
Busca de dados
- Busca no arquivo inteiro ou em uma área selecionada
- Extração de strings, busca por sequência, busca com expressão regular, padrões binários e valores numéricos
Suporte a hashing de dados
- Vários algoritmos disponíveis
- Hashing de áreas específicas e strings arbitrárias
Suporte a diffing
- Comparação entre diferentes fontes de dados
- Destaque das diferenças e visualização em tabela
Disassembler integrado
- Suporte a todas as arquiteturas compatíveis com Capstone
Favoritos
- Suporte a nomes e cores personalizados
- Destaque de áreas marcadas e navegação até os favoritos
Analisador de dados e ferramentas de visualização
- Parser de arquivos baseado em file magic e banco de dados de tipos MIME
- Gráfico de distribuição de tipos de byte, gráfico de entropia
Suporte a regras YARA
- Varredura de arquivos com regras YARA oficiais
- Destaque de correspondências e navegação até elas
Ferramentas úteis
- Vários demanglers, tabela ASCII, substituidor de expressões regulares, avaliador de expressões matemáticas, calculadora gráfica, seletor de cores, conversor de bases, byte swapper, calculadora de permissões UNIX, busca de definições de termos na Wikipedia, utilitários de arquivo, visualizador de float IEEE754, cliente/servidor TCP, calculadora do algoritmo de Euclides
Atualizações de conteúdo integradas
- Download de arquivos a partir do banco de dados
Interface moderna
- Suporte a múltiplos espaços de trabalho e layouts personalizados
- Janelas destacáveis
Fácil de começar
- Suporte a vários idiomas, modo simplificado para iniciantes, documentação extensa, muitos arquivos de exemplo no banco de dados, tutorial interativo
Linguagem de padrões
- Definição de estruturas e tipos de dados com sintaxe semelhante a C
- Parsing e destaque do conteúdo dos arquivos
Banco de dados
- Padrões de formatos, bibliotecas, arquivos magic e constantes
Requisitos
- Requer GPU com suporte a OpenGL 3.0
- Suporte a Windows, macOS e Linux
Instalação
- Consulte o guia de instalação
Compilação
- Requer GCC ou Clang, com suporte a C++23 ou superior
Contribuição
- Consulte o guia de contribuição
Desenvolvimento de plugins
- Use o projeto de template
Créditos
- Agradecimentos aos principais contribuidores e bibliotecas utilizadas
Licença
- Em sua maior parte sob licença GPLv2-only, com algumas partes sob LGPLv2.1
Opinião do GN⁺
- O ImHex é uma ferramenta muito útil para tarefas de engenharia reversa e programação. Destaca-se especialmente pela capacidade de visualizar e analisar vários tipos de dados.
- Ele oferece recursos amigáveis ao usuário, como o modo noturno, que ajudam a reduzir a fadiga visual mesmo durante longos períodos de trabalho.
- Graças à compatibilidade com diversas fontes de dados, pode ser usado em diferentes ambientes.
- Outras ferramentas com recursos semelhantes incluem HxD e 010 Editor.
- Ao adotar novas tecnologias ou projetos open source, é importante considerar bem os prós e contras. No caso do ImHex, por exemplo, o suporte a GPU é obrigatório.
1 comentários
Comentários do Hacker News
O ImHex é o melhor editor hexadecimal que já usei até agora
Fico me perguntando se existe uma forma de este editor mostrar bytes ASCII com glifos CP437
Tentei usar o ImHex, mas achei complexo demais
A linguagem de padrões é muito útil e ajuda bastante no aprendizado
O ImHex geralmente exige uma GPU com suporte a OpenGL 3.0
O ImHex parece bom
Gosto muito dessa área da cultura da computação
Este projeto é realmente excelente
Por enquanto, vou continuar usando o 010 Editor
Este projeto parece bem legal