
Um HexEditor completo, compatível com Linux/Windows/MacOS
Este projeto nasce com o objetivo de desenvolver uma ferramenta leve, mas útil. A razão é que os editores hex existentes possuem algumas limitações diferentes (por exemplo, muitas dependências, falta de recursos de coloração hex, etc.).

Este projeto é baseado nos motores qhexedit2, capstone e keystone. Novos recursos podem ser adicionados no futuro, PRs são bem-vindos.
CTRL + F]CTRL + B]CTRL + C e CTRL + V]CTRL + Espaço]Delete ou CTRL + D]CTRL + Z e CTRL + Y]CTRL + S]CTRL + G]INS]CTRL + N]CTRL + T]F5]F1]F2]F3]F4]F4]CTRL + Cima/Baixo ou CTRL + -/+)O Fhex pode carregar na inicialização um arquivo de configuração (de ~/fhex/config.json) no formato JSON com uma lista de strings ou bytes para destacar e um comentário/rótulo para adicionar próximo às correspondências.
Exemplos:
{
"PatternMatching":
[
{
"string" : "://www.",
"color" : "rgba(250,200,200,50)",
"message" : "Found url"
},
{
"bytes" : "414243",
"color" : "rgba(250,200,200,50)",
"message" : "Found ABC"
}
]
}
Para ativar a correspondência de padrões, pressione CTRL + P
Ao final, o Fhex também mostrará uma lista de offsets com todas as referências dos resultados.
Nota: Os rótulos com comentários são adicionados apenas se a janela estiver maximizada. Se os rótulos não forem exibidos corretamente, tente executar a correspondência de padrões novamente.
O Fhex tem o recurso de gerar um gráfico do arquivo binário carregado (Nota: Para compilar o projeto, agora você também precisa ter o qt5-charts instalado no sistema).
O intervalo do eixo y está entre 0 e 255 (em hex 0x0 e 0xff, ou seja, os valores dos bytes). O intervalo do eixo x está entre 0 e o tamanho do arquivo.
O gráfico plota os valores dos bytes do arquivo binário e permite que você se concentre apenas nas seções relevantes. Por exemplo, se em um arquivo binário houver uma área cheia de bytes nulos, você pode detectá-la facilmente no gráfico.
O projeto tem as seguintes dependências: qt5-charts (pacote: libqt5charts5-dev no debian/ubuntu), capstone (opcional) e keystone (opcional).
No linux você pode verificar se possui a biblioteca obrigatória com ldconfig -p | grep -i qt5charts
O Fhex por padrão é compilado com o perfil MINIMAL, o que significa que não inclui capstone e keystone. Você pode alterar essa opção removendo a linha relacionada de fhex.pro.
Para compilar o Fhex no linux, execute estes comandos:
mkdir build
cd build
qmake ..
make -j$(nproc)
GPL-3