Guías Forense

Cómo funcionan las firmas de archivo (magic bytes)

Cómo los primeros bytes de un archivo identifican su tipo real, una tabla de firmas verificadas con archivos reales y por qué las extensiones pueden mentir.

Última revisión:

AdSense Placeholder
Slot: header_reference_page
En esta página

La mayoría de los formatos de archivo empiezan con unos pocos bytes fijos, una firma de archivo o número mágico, que identifican el formato con independencia del nombre del archivo. Los sistemas operativos y los programas usan la extensión como pista, pero la firma es lo que el archivo realmente es. Es la base de la detección del tipo de archivo, la validación de subidas, la recuperación de datos y el carving forense. Inspeccione los bytes de cualquier archivo con Análisis Forense Binario y de Archivos Comprimidos.

Firmas habituales

Formato Firma (hex) Como texto Posición
Imagen PNG 89 50 4E 47 0D 0A 1A 0A .PNG.... 0
Imagen JPEG FF D8 FF ... 0
Imagen GIF 47 49 46 38 GIF8 0
Imagen WebP 52 49 46 46 .. .. .. .. 57 45 42 50 RIFF....WEBP 0
Imagen BMP 42 4D BM 0
Imagen TIFF 49 49 2A 00 (or 4D 4D 00 2A) II*. 0
Documento PDF 25 50 44 46 2D %PDF- 0
Archivo ZIP (también DOCX, XLSX, JAR, APK) 50 4B 03 04 PK.. 0
Archivo gzip 1F 8B .. 0
Archivo TAR 75 73 74 61 72 ustar 257
Base de datos SQLite 53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00 SQLite format 3. 0
Ejecutable ELF (Linux) 7F 45 4C 46 .ELF 0
Ejecutable de Windows (EXE, DLL) 4D 5A MZ 0
Archivo 7-Zip 37 7A BC AF 27 1C 7z.... 0
Archivo RAR 52 61 72 21 1A 07 Rar!.. 0
Archivos antiguos de Office (DOC, XLS) y MSI D0 CF 11 E0 A1 B1 1A E1 ........ 0
Audio MP3 con etiqueta ID3 49 44 33 ID3 0
Vídeo MP4 / MOV .. .. .. .. 66 74 79 70 ....ftyp 0

Las doce primeras filas se comprobaron creando archivos reales y leyendo sus primeros bytes, y las habituales las confirmó la herramienta file del sistema. Algunos formatos llevan el marcador más adentro del archivo: el ustar de TAR está en el byte 257 y MP4 tiene ftyp en el byte 4.

Por qué las extensiones no bastan

La extensión es solo parte del nombre, así que cualquiera puede cambiarla. Un programa renombrado vacaciones.jpg sigue siendo un programa, y un PNG renombrado .jpg sigue siendo un PNG: la mayoría de los visores de imágenes lo detectan por la firma y lo abren igualmente.

Dónde importan las firmas

  • Comprobación de subidas. Validar la extensión o el Content-Type que envió el navegador no basta, porque ambos los controla el atacante. Compare los primeros bytes con la firma esperada y vuelva a codificar las imágenes cuando pueda. Vea Guía rápida de tipos MIME.
  • Recuperación de datos y carving. Las herramientas buscan en el espacio de disco en bruto firmas conocidas para reconstruir archivos borrados, aunque el sistema de archivos ya no los liste.
  • Forense. Una discrepancia entre extensión y firma es una señal de alarma clásica; las herramientas Análisis Forense de Documentos y Análisis Forense de Imágenes miran la estructura real, no solo la etiqueta.
  • Antivirus y pasarelas de correo usan firmas para decidir cómo descomprimir y analizar los adjuntos.

Los contenedores esconden lo que hay dentro

Un DOCX, XLSX, PPTX, JAR y APK son todos archivos ZIP con una estructura concreta, así que empiezan por 50 4B 03 04 igual que cualquier archivo comprimido. Del mismo modo, los antiguos DOC y XLS comparten una firma de contenedor OLE. La firma indica el contenedor; hay que mirar dentro para saber el tipo real.

Límites

  • Las firmas son cortas, así que un archivo puede empezar con una válida y contener otra cosa. Un archivo políglota es válido a propósito como dos formatos a la vez.
  • Algunos formatos no tienen firma (texto plano, CSV, audio en bruto) y hay que reconocerlos por su contenido.
  • Los datos finales tras el fin de un archivo válido son habituales en archivos manipulados o concatenados, y una comprobación de firma al principio no los verá.

Relacionado: Bytes mágicos (magic bytes), Hexadecimal y Cómo funcionan las bases numéricas: binario, octal y hex.

Pruebe estas herramientas

Véase también

  • Glosario Bytes mágicos (magic bytes)
    Los bytes mágicos, o firma de archivo, son los bytes fijos al comienzo de un archivo que identifican su formato real con independencia de.
  • Glosario Hexadecimal
    El hexadecimal (hex) es el sistema de numeración en base 16, que usa los dígitos 0-9 y las letras A-F.
  • Glosario Esteganografía
    La esteganografía es la práctica de ocultar un mensaje o archivo dentro de otro archivo de aspecto corriente, como una imagen.
  • Guía rápida Guía rápida de tipos MIME
    Los tipos MIME de páginas web, datos, imágenes, audio, vídeo, fuentes y archivos.
  • Guía Cómo funcionan las bases numéricas: binario, octal y hex
    El valor posicional en binario, octal y hexadecimal, convertir 202 entre todas ellas paso a paso, colores hexadecimales.

Preguntas frecuentes

No. Las extensiones las elige quien hizo el archivo. Compruebe la firma y, en los archivos importantes, analice también el contenido.

AdSense Placeholder
Slot: footer_leaderboard