Este projeto nasceu com o objetivo de desenvolver uma ferramenta leve, mas útil. O motivo é que os editores hexadecimais existentes têm algumas limitações diferentes (por exemplo, muitas dependências, falta de coloração hexadecimal, etc.).



Este projeto é baseado nos motores qhexedit2 , Capstone e Keystone . Novos recursos podem ser adicionados no futuro, os PRs são bem -vindos.
CTRL + F ]CTRL + B ]CTRL + C e CTRL + V ]CTRL + Space ]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 + Up/Down 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/etiqueta para adicionar perto das 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 no final, o FHEX mostrará também uma lista de deslocamento com todas as referências de resultado. Nota: Os rótulos com comentários são adicionados apenas se a janela for maximizada, se os rótulos não forem exibidos corretamente, tente executar a correspondência de padrões novamente.
O FHEX possui o recurso para traçar o arquivo binário carregado ( Nota: Para compilar o projeto, agora você também precisa de qt5-charts instalados no sistema). A faixa do eixo y está entre 0 e 255 (em Hex 0x0 e 0xff, ou seja, os valores de bytes). O intervalo do eixo x está entre 0 e o tamanho do arquivo.
O gráfico plota os valores de 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ê poderá detectá -lo facilmente no gráfico.
O projeto possui 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 mínimo, isso significa que não inclui Capstone e Keystone. Você pode alterar esta opção removendo a linha relacionada de fhex.pro .
Para construir o FHEX no Linux, execute estes comandos:
mkdir build
cd build
qmake ..
make -j $( nproc )GPL-3