Este proyecto nace con el objetivo de desarrollar una herramienta liviana pero útil. La razón es que los editores hexadecimales existentes tienen algunas limitaciones diferentes (por ejemplo, demasiadas dependencias, faltan características de color hexagonal, etc.).



Este proyecto se basa en los motores Qhexedit2 , Capstone y Keystone . Se podrían agregar nuevas características en el futuro, los PR son bienvenidos.
CTRL + F ]CTRL + B ]CTRL + C y CTRL + V ]CTRL + Space ]Delete o CTRL + D ]CTRL + Z y CTRL + Y ]CTRL + S ]CTRL + G ]INS ]CTRL + N ]CTRL + T ]F5 ]F1 ]F2 ]F3 ]F4 ]F4 ]CTRL + Up/Down o CTRL + -/+ ) FHEX puede cargar al inicio un archivo de configuración (de ~/fhex/config.json ) en formato JSON con una lista de cadenas o bytes para resaltar y un comentario/etiqueta para agregar cerca de las coincidencias.
Ejemplos:
{
"PatternMatching" :
[
{
"string" : " ://www. " ,
"color" : " rgba(250,200,200,50) " ,
"message" : " Found url "
},
{
"bytes" : " 414243 " ,
"color" : " rgba(250,200,200,50) " ,
"message" : " Found ABC "
}
]
} Para activar Pattern Matching Presione CTRL + P al final, FHEX mostrará también una lista de compensación con todas las referencias de resultados. Nota: Las etiquetas con comentarios solo se agregan si la ventana se maximiza, si las etiquetas no se muestran correctamente, intente ejecutar la coincidencia de patrones nuevamente.
FHEX tiene la función para trazar el archivo binario cargado ( nota: para compilar el proyecto, ahora también necesita qt5-charts instalados en el sistema). El rango del eje Y está entre 0 y 255 (en hex 0x0 y 0xff, es decir, los valores de byte). El rango del eje X está entre 0 y el tamaño de archivos.
El gráfico traza los valores de byte del archivo binario y le permite centrarse solo en las secciones relevantes. Por ejemplo, si en un archivo binario hay un área llena de bytes nulos, puede detectarlo fácilmente de la tabla.
El proyecto tiene las siguientes dependencias: QT5 Charts (paquete: libqt5charts5-dev en Debian/Ubuntu), Capstone (opcional) y Keystone (opcional). En Linux, puede verificar si tiene la biblioteca obligatoria con ldconfig -p | grep -i qt5charts
FHEX de forma predeterminada se compila con el perfil mínimo, esto significa que no incluye Capstone y Keystone. Puede cambiar esta opción Eliminar la línea relacionada de fhex.pro .
Para construir FHEX en Linux, ejecute estos comandos:
mkdir build
cd build
qmake ..
make -j $( nproc )GPL-3