Editor Hexadecimal Binario | Ver y editar archivos en hexadecimal
Arrastra y suelta un archivo para ver su contenido byte a byte en formato hexadecimal (hex dump). Identifica el tipo real del archivo mediante sus bytes mágicos, edita bytes individuales y descarga el resultado. El archivo nunca se sube a ningún servidor.
Firmas de archivo comunes (números mágicos)
| Formato | Bytes iniciales (hex) | Desplazamiento | Nota |
|---|---|---|---|
| PNG | 89 50 4E 47 0D 0A 1A 0A | 0 | Archivo de imagen. Si coinciden los 8 bytes, se confirma un PNG con casi total certeza |
| JPEG | FF D8 FF | 0 | Archivo de imagen. El cuarto byte varía según la variante (JFIF, Exif, etc.) |
| GIF | 47 49 46 38 39 61 / 47 49 46 38 37 61 | 0 | La cadena ASCII "GIF89a" o "GIF87a" |
| 25 50 44 46 2D | 0 | La cadena ASCII "%PDF-", seguida del número de versión | |
| ZIP / docx / xlsx / jar | 50 4B 03 04 | 0 | Formato ZIP. Office Open XML y muchos formatos de archivo comprimido son internamente ZIP |
| Ejecutable de Windows (EXE/DLL) | 4D 5A | 0 | La cadena ASCII "MZ", una cabecera heredada de MS-DOS que aún persiste en el formato PE |
| Ejecutable ELF | 7F 45 4C 46 | 0 | Ejecutables y bibliotecas compartidas usados en Linux y sistemas similares |
Qué es un editor hexadecimal binario
En el fondo, cualquier archivo no es más que una secuencia de bytes. Un editor hexadecimal muestra ese contenido byte a byte en forma de número hexadecimal y permite reescribirlo directamente cuando hace falta. Precisamente los primeros bytes de muchísimos formatos guardan los llamados bytes mágicos, que revelan el formato real del archivo: una forma de determinar su verdadera naturaleza sin fiarse a ciegas de la extensión.
Esta herramienta carga archivos arrastrándolos o mediante la introducción directa de valores hexadecimales. La visualización, la edición y la descarga ocurren enteramente en tu navegador, sin que el contenido se envíe jamás a un servidor. Eso sí, en el caso de archivos grandes solo se procesan los primeros 64KB; todo lo que quede fuera de ese límite no se conserva ni siquiera al descargar el resultado.
Cómo usar el editor hexadecimal
- Carga el archivo Arrastra un archivo hasta el área indicada, o pega directamente una secuencia de dígitos hexadecimales. Los espacios y los saltos de línea se ignoran.
- Observa los bytes iniciales Basta con mirar la zona cercana al desplazamiento 0 y compararla con la tabla anterior para identificar el verdadero formato del archivo.
- Edita un byte Haz clic en cualquier celda hexadecimal para cambiar ese byte a un valor entre 00 y FF. La columna ASCII se actualiza al mismo tiempo.
- Descarga el resultado Guarda el contenido editado como archivo. El original nunca se modifica, así que puedes probar ediciones experimentales con total seguridad.
- Compara con la tabla de firmas Vuelve a la tabla de firmas de archivo comunes siempre que necesites confirmar a qué formato corresponde una secuencia de bytes concreta.
Consejos para aprovecharla mejor
- Para desenmascarar un archivo cuya extensión fue cambiada, compara sus bytes iniciales (bytes mágicos) con la tabla anterior. La extensión es solo una etiqueta, pero los bytes mágicos provienen del propio formato y son mucho más difíciles de falsificar.
- En el modo de hexadecimal manual puedes pegar secuencias de bytes copiadas de otras herramientas (separadas por espacios o por saltos de línea, ambas funcionan) y cargarlas directamente.
- Si haces clic en la celda equivocada mientras editas, pulsa Esc para cancelar la edición de esa celda sin modificar el byte.
- Al depurar un protocolo binario, compara en esta herramienta los bytes esperados frente a los realmente enviados o recibidos para localizar con precisión dónde difieren.
Situaciones en las que usar el editor hexadecimal
Desenmascarar un archivo con la extensión falsificada
Comprobar los bytes iniciales revela si la extensión declarada coincide de verdad con el formato real, algo muy útil para revisar un adjunto sospechoso.
Diagnosticar un archivo corrupto
La secuencia de bytes permite saber si falta la cabecera o si el archivo se cortó a mitad de camino, algo clave para valorar si su recuperación es viable.
Aprender la especificación de un formato de archivo
Leer la documentación técnica junto a la secuencia real de bytes ayuda a entender de forma concreta cómo se estructura una cabecera.
Crear datos de prueba deliberadamente dañados
Reescribir a propósito unos cuantos bytes permite comprobar cómo se comporta una aplicación cuando recibe un archivo anómalo.
Inspeccionar un protocolo binario byte a byte
Puedes examinar directamente los datos en bruto enviados o recibidos, sin necesidad de recurrir a un analizador de red aparte.
Términos sobre archivos binarios
- Byte
- Unidad formada por 8 bits. En hexadecimal se escribe con dos dígitos, de 00 a FF.
- Bytes mágicos
- Secuencia distintiva situada al principio de un archivo para identificar su formato. También se conoce como firma de archivo.
- Desplazamiento (offset)
- La posición de un byte, contada desde el inicio del archivo. Se suele expresar en hexadecimal.
- Cabecera (header)
- La sección situada al principio del archivo que reúne información como el formato y el tamaño.
- Vista ASCII
- Una representación en la que cada byte se interpreta como un carácter, útil para localizar texto incrustado.
- Orden de bytes (endianness)
- El criterio con el que se ordenan los bytes de un número de varios bytes. Según el formato, el byte más significativo puede ir primero o al final.
- Firma de archivo
- Otro nombre para los bytes mágicos: la secuencia que un formato usa de manera constante para identificarse a sí mismo.
Preguntas frecuentes
FF D8 FF, es muy probable que sea una imagen JPEG, independientemente de su extensión.
A propósito — Por qué la verdadera identidad de un archivo está en sus bytes, no en su extensión
La extensión de un archivo es solo una pista que indica al sistema operativo con qué aplicación abrirlo; es una etiqueta que existe de forma independiente del contenido real del archivo. Renombrar `foto.jpg` a `notas.txt` no lo convierte en texto, y quitarle la extensión a una imagen real no borra los datos de la imagen subyacente. Precisamente porque esta etiqueta es, en esencia, una autodeclaración, el malware lleva mucho tiempo aprovechándola para disfrazar ejecutables como inofensivas imágenes o documentos.
Para evitar este problema, la mayoría de los formatos de archivo incorporan un identificador único —llamado bytes mágicos o número mágico— en sus primeros bytes. Un archivo PNG, por ejemplo, siempre comienza con la secuencia exacta de 8 bytes `89 50 4E 47 0D 0A 1A 0A` tal como define la especificación. Esto significa que un sistema operativo o una aplicación solo pueden estar realmente seguros del formato de un archivo tras inspeccionar su contenido real, no su nombre. Tanto el comando `file` de Unix como la detección de tipo MIME de los navegadores se basan principalmente en comparar estos bytes mágicos en lugar de confiar en la extensión.
Algunas secuencias de bytes mágicos esconden un ingenioso detalle histórico. Los 8 bytes del PNG incluyen deliberadamente una secuencia de fin de línea (0D 0A) precisamente para que las transferencias en modo texto —que a veces alteran los saltos de línea— puedan detectarse como corruptas. Lejos de ser un simple identificador arbitrario, cumple también la función de una comprobación de integridad incorporada, un pequeño detalle que revela cuánta reflexión hay detrás del diseño de los formatos binarios.