Qué es el data carving y cómo se usa para recuperar archivos

Última actualización: 26/02/2026
Autor: Isaac
  • El data carving permite recuperar archivos analizando los datos en bruto sin usar el sistema de archivos.
  • Se basa en firmas, cabeceras, pies y magic numbers para localizar y reconstruir formatos conocidos.
  • Herramientas como Photorec, Foremost o Scalpel implementan estas técnicas con distintas capacidades.
  • La fragmentación y la pérdida de nombres son sus grandes límites, que los algoritmos de smart carving intentan superar.

ilustración sobre data carving

El data carving (o file carving) suena a cosa exótica, pero en realidad es una de esas técnicas que salvan el día cuando todo parece perdido: discos formateados, particiones borradas, sistemas de archivos hechos polvo… y aun así seguimos pudiendo sacar archivos de ahí. No es magia, es aprovechar cómo están construidos los ficheros por dentro y exprimir hasta el último byte de un disco, aunque el sistema operativo diga que está vacío.

Qué es exactamente el data carving

En pocas palabras, el data carving es el proceso de extraer secuencias de datos (archivos) a partir de un conjunto mayor de datos, sin apoyarse en las estructuras del sistema de archivos. DFRWS 2006 lo definió como la extracción de una serie de datos desde un conjunto de datos más grande, típica en análisis del espacio no asignado de un sistema de ficheros, usando cabeceras y pies de archivo para reconocer tipos concretos, ignorando totalmente el sistema de archivos.

Dicho en cristiano: en vez de preguntar al sistema de archivos “oye, ¿dónde está este fichero?”, las herramientas de carving leen el disco como un bloque enorme de bytes “a pelo”, y ahí dentro van cazando archivos a partir de sus firmas internas. Es el equivalente digital a ponerse a excavar en un vertedero buscando objetos que reconoces por su forma, sin tener ningún inventario de lo que había.

Este proceso suele aplicarse sobre el espacio no asignado o no ubicado: esas zonas que el sistema de ficheros marca como libres, pero donde en realidad aún quedan restos de archivos antiguos. En discos muy dañados, reparticionados o formateados, se puede terminar trabajando directamente sobre toda la superficie física del dispositivo.

Un detalle importante es que el data carving no se limita a discos duros clásicos. Se aplica también a SSD, tarjetas SD, memorias USB, imágenes forenses en formato RAW, dumps de memoria, etc. Siempre que haya bytes que analizar, se puede intentar “tallar” ficheros de ahí.

ejemplo visual de file carving

Recuperación clásica vs file carving

La recuperación de datos tradicional se apoya en que los metadatos del sistema de archivos siguen vivos. Por ejemplo, en NTFS (Windows), FAT, ext4 (Linux), etc., cuando borras un fichero normalmente solo se marca como libre su entrada en la tabla, pero los datos siguen ahí hasta que se sobrescriben.

Mientras esas estructuras existen, las herramientas pueden leer las tablas de ficheros, seguir los punteros a los bloques de datos y reconstruir el archivo, incluso si está fragmentado. También pueden distinguir fácilmente qué bloques pertenecen a archivos activos y cuáles están “huérfanos”.

¿El problema? Cuando se da alguno de estos escenarios, el método clásico se queda vendido y no puede recuperar nada útil:

  • El archivo se borró hace mucho y su registro en la tabla de ficheros ha sido reutilizado.
  • El disco se ha formateado o reparticionado (por ejemplo, instalas Linux encima de un Windows antiguo).
  • Las estructuras del sistema de archivos están corruptas por daños físicos, malware o errores lógicos.
  • El sistema de archivos original ha sido sobrescrito por otro (ejemplo típico: un disco de Windows pasado a ext4).

En esos casos es donde entra el file carving: deja de lado tablas, inodos y MFT, y se dedica a escanear el espacio en bruto del dispositivo buscando patrones conocidos de archivos. Es un enfoque más “ciego”, pero tremendamente útil cuando ya no queda nada más a lo que agarrarse.

Firmas, cabeceras, pies y magic numbers

La clave del carving está en que casi todos los tipos de fichero tienen firmas reconocibles. Estas firmas suelen estar en la cabecera (inicio del archivo) y, a veces, también en el pie (final). Además, muchos formatos guardan en esos primeros bytes metadatos como la longitud total del archivo u otra información estructural.

El concepto de magic number es esencial: es una constante que permite identificar inequívocamente un tipo de archivo, independientemente de la extensión que le haya puesto el sistema operativo. Las extensiones (.jpg, .doc, .zip…) ayudan al usuario y al sistema, pero lo que manda de verdad es lo que hay en los primeros bytes del fichero.

  IMSI‑Catchers: qué son, cómo funcionan y cómo protegerte

Por ejemplo, los GIF estándar empiezan con las cadenas ASCII «GIF87a» o «GIF89a». En hexadecimal, eso se traduce en una cabecera concreta que cualquier herramienta puede buscar. En el caso de los GIF, el pie típico incluye el byte 0x3B («;»), de nuevo en posiciones muy concretas.

Otro ejemplo muy conocido: un JPEG bien formado arranca con 0xFFD8 y termina con 0xFFD9. Si abrimos una imagen en un editor hexadecimal, veremos esa firma al principio y ese marcador al final. Entre medias, hay más marcas propias del formato (segmentos, tablas de Huffman, etc.) que permiten validarlo.

En Linux, el comando file usa una base de datos de magic numbers (en /usr/share/file/magic o su versión compilada magic.mgc) para identificar el tipo real de un fichero inspeccionando sus primeros bytes, no la extensión. En Windows no hay un equivalente nativo tan potente, pero existen herramientas como filever o utilidades de terceros que ofrecen funciones similares.

Cómo funciona el proceso de file carving paso a paso

La lógica general es muy parecida en la mayoría de herramientas, aunque cada una tenga sus trucos. De forma resumida, un proceso de file carving suele seguir estas etapas básicas:

1. Lectura secuencial del dispositivo o imagen
La herramienta lee el contenido del disco, partición o imagen forense en bloques (por ejemplo, de 512 bytes por defecto, aunque muchas permiten ajustar ese tamaño con parámetros como -b). Estos bloques se cargan en memoria para poder analizarlos con comodidad.

2. Búsqueda de firmas de cabecera y pie
Sobre esos datos en memoria, el programa busca las firmas definidas en su fichero de configuración (por ejemplo, foremost.conf en el caso de Foremost). Cada entrada de configuración indica:

  • Extensión que se asignará al archivo recuperado (jpg, doc, gif, etc.).
  • Si la comparación del magic number es sensible o no a mayúsculas.
  • Tamaño máximo que puede tener el archivo si no se encuentra pie.
  • Los valores de cabecera y, opcionalmente, de pie en hexadecimal u octal.
  • Opciones especiales como REVERSE o NEXT para variantes de búsqueda.

Cuando encuentra una cabecera válida, la herramienta asume que ahí empieza un archivo y busca el pie correspondiente o, si el formato lo permite, calcula la longitud a partir de la información embebida en el propio encabezado.

3. Extracción y reensamblado de los datos
Una vez localizados el inicio y el final (o el tamaño estimado), el programa copia todos los bloques que forman parte del archivo y los vuelca a un fichero nuevo. En caso de formatos sin pie definido pero con tamaño en cabecera (por ejemplo, BMP), se usan esos metadatos para saber cuántos bytes leer.

4. Validación de los archivos recuperados
Las herramientas más avanzadas no se conforman con recuperar “cualquier cosa”: aplican validadores específicos por tipo de archivo para comprobar que las estructuras internas tienen sentido (tablas, checksums, campos obligatorios, etc.). Esto reduce falsos positivos y ayuda a detectar archivos corruptos o incompletos.

5. Organización de resultados e informe
Normalmente, la herramienta crea un directorio de salida (por ejemplo, output o el que se indique con -o) y dentro genera subcarpetas por extensión: jpg, gif, ole, etc. También produce un archivo de auditoría, tipo audit.txt, donde se documenta:

  • Parámetros de ejecución, hora de inicio y fin.
  • Nombre del dispositivo o imagen analizada.
  • Número de archivos extraídos por tipo.
  • Nombre de cada fichero recuperado, tamaño y desplazamiento dentro de la imagen origen.

Herramientas típicas de file carving

En el día a día de la recuperación de datos y el análisis forense se usan varias herramientas especializadas que implementan estas técnicas de carving de formas distintas, con más o menos automatización y capacidades de validación.

Photorec
Photorec es probablemente una de las herramientas de carving más populares. Es gratuita, de código abierto y multiplaforma. Fue diseñada inicialmente para recuperar fotografías, pero hoy soporta cientos de tipos de archivo. Trabaja leyendo dispositivos o imágenes en crudo y extrayendo archivos a partir de firmas conocidas, sin tocar el contenido original.

Scalpel
Scalpel es otro clásico del ecosistema libre. Permite una configuración muy detallada de firmas a través de su fichero de configuración, lo que lo hace muy flexible para entornos forenses donde interesa afinar al milímetro qué tipos de archivo se buscan. Suele ejecutarse desde línea de comandos en Linux y exige cierto nivel técnico.

  CVE-2025-24071: Vulnerabilidad en Windows Explorer y cómo protegerse

Foremost
Foremost nació en el ámbito militar (fue desarrollado para la Fuerza Aérea de Estados Unidos) y después se liberó su código. Su filosofía se centra en el carving por cabecera/pie y por longitud embebida, apoyado en un fichero de configuración muy rico. En sistemas Linux se instala fácilmente, y en Windows se puede usar compilándolo con Cygwin, que actúa como capa de compatibilidad POSIX.

En el caso de Foremost, para usarlo en Windows hay que compilarlo desde el código fuente dentro del entorno Cygwin, copiando después el ejecutable foremost.exe, su fichero foremost.conf y la librería cygwin1.dll al mismo directorio. A partir de ahí puede ejecutarse como si estuviéramos en un Linux, con las mismas opciones y comportamiento.

Escenarios reales donde se usa data carving

Más allá de la teoría, el carving tiene aplicaciones muy concretas y habituales tanto en entornos profesionales como domésticos. Algunos casos típicos son:

Recuperación de archivos borrados hace tiempo
Cuando un archivo se elimina (por ejemplo, y se intentan recuperar con herramientas como Windows File Recovery) y posteriormente el sistema reutiliza su entrada en la tabla de ficheros, el método clásico deja de ver nada. Sin embargo, mientras los bloques del archivo no se hayan sobrescrito, el data carving puede seguir encontrando esas cabeceras y reconstruir buena parte del contenido.

Discos formateados o con particiones eliminadas
Al formatear o reparticionar, normalmente solo se tocan las zonas de metadatos y la estructura lógica. El contenido físico sigue ahí, al menos al principio. Un buen proceso de carving permite levantar fotos, documentos y otros ficheros desde esas áreas que ahora parecen “vacías”.

Investigación forense digital
En un análisis forense es habitual trabajar con imágenes RAW de discos que han pasado por mil vicisitudes: sistemas operativos reinstalados, malware, intentos de borrado, etc. El data carving es fundamental para localizar evidencias en el espacio no asignado: correos antiguos, logs de aplicaciones, documentos temporales o ficheros “olvidados” que ya no están referenciados por el sistema de archivos.

Recuperación en dispositivos dañados
En discos con sectores defectuosos o SSD con problemas lógicos, el sistema de archivos puede quedar en un estado tan corrupto que no se llega ni a montar. Aquí, de nuevo, el carving sobre una imagen creada previamente (para no agravar los daños) puede rescatar al menos parte de la información útil.

Limitaciones del file carving: nombres, fragmentación y falsos positivos

El data carving es potentísimo, pero no es un milagro. Tiene limitaciones estructurales que conviene conocer para no llevarse decepciones ni sacar conclusiones erróneas en un análisis forense.

Pérdida del nombre y la ruta original
Sin acceso al sistema de archivos, el programa no tiene forma de saber cómo se llamaba el fichero ni en qué carpeta estaba. Por eso las herramientas generan nombres genéricos, del tipo 00032837.doc, imagen0001.jpg, etc. Desde el punto de vista probatorio o de usuario, esto obliga a revisar manualmente los contenidos para identificar su relevancia.

Fragmentación de archivos
La gran piedra en el zapato del carving clásico es la fragmentación. Muchos algoritmos sencillos asumen que el archivo está en bloques contiguos. En la práctica, sobre todo en discos muy usados, los ficheros grandes (imágenes de alta resolución, PST de correo, bases de datos, etc.) suelen estar partidos en varios fragmentos desperdigados por el disco.

Estudios como los de Simson Garfinkel han mostrado que, aunque el porcentaje global de fragmentación pueda parecer modesto, entre los tipos de archivo de interés forense las cifras se disparan (por ejemplo, un porcentaje significativo de JPG, DOC o PST aparece fragmentado). En estos casos, un header-footer carving simple recupera archivos incompletos o con basura incrustada de otros ficheros intermedios.

Falsos positivos y archivos corruptos
Cuanto más genérica sea la firma de un tipo de fichero, más fácil es que aparezcan coincidencias espurias en datos aleatorios (p. ej., ver un “PK” de un ZIP dentro de un texto). De ahí la importancia de validar bien la estructura interna: longitud declarada, campos obligatorios, consistencia de cabeceras, etc.

  Transferencia lenta en USB: causas y soluciones definitivas para acelerar la copia de archivos

Para reducir estos problemas han surgido enfoques como el file structure based carving, semantic carving, carving con validación avanzada y smart carving, que combinan análisis de estructura, patrones estadísticos (entropía, distribuciones de bytes) e incluso análisis lingüístico para decidir si un bloque encaja o no dentro de un fichero candidato.

Smart carving y técnicas avanzadas

Para lidiar con la fragmentación y mejorar la calidad de los resultados, se han ido desarrollando algoritmos de smart carving. La idea general es dejar de asumir que todo es contiguo y atacar el problema como un rompecabezas de bloques que hay que recomponer en el orden correcto.

Algunos trabajos clásicos (por ejemplo, los de Shanmugasundaram) modelan la reconstrucción de un archivo fragmentado como un camino Hamiltoniano en un grafo: cada bloque es un nodo y las aristas representan la probabilidad de que un bloque siga a otro, en función de cómo encajan sus contenidos. A partir de ahí se aplican heurísticas, búsqueda alfa-beta y otras técnicas de teoría de grafos y de juegos para encontrar la secuencia más plausible.

A alto nivel, muchos smart carvers actuales siguen tres fases:

  • Preprocesado: descomprimir, desencriptar o normalizar los bloques para poder analizarlos.
  • Cotejado: clasificar bloques según el tipo de archivo al que probablemente pertenecen (por firma, entropía, patrones internos…).
  • Reensamblado: ordenar los fragmentos en la secuencia más lógica para reconstruir ficheros completos, incluso si estaban muy fragmentados.

Este enfoque es la base de herramientas comerciales como herramientas comerciales como Adroit Photo Forensics o Adroit Photo Recovery, pensadas para rescatar fotografías en condiciones realmente complejas. Suelen apoyarse además en validadores muy estrictos por tipo de imagen (JPEG, TIFF, RAW de cámaras, etc.).

Buenas prácticas antes y durante el carving

Si se va a usar data carving en un caso serio (ya sea una empresa intentando recuperar datos o una investigación forense), hay una serie de buenas prácticas que conviene seguir siempre:

Crear una imagen del disco
Antes de hacer nada, lo prudente es generar una imagen bit a bit del dispositivo (por ejemplo, con dd, dc3dd, Guymager, etc.). Esto evita tocar el disco original y permite repetir procesos de carving con distintas herramientas y parámetros sin añadir daños.

Trabajar siempre sobre copias
Una vez creada la imagen maestra, es buena idea hacer copias de trabajo y lanzar el carving sobre ellas. Así se preserva una evidencia inmutable por si hace falta repetir análisis, presentar pruebas en juicio, o simplemente comprobar resultados con nuevas versiones de las herramientas.

Ajustar y probar configuraciones
Herramientas como Foremost, Scalpel o Photorec permiten afinar qué tipos de archivo se buscan, qué tamaños máximos se aceptan, cómo se interpretan las firmas, etc. Conviene probar distintas configuraciones, especialmente cuando se sabe de antemano qué tipo de ficheros interesa (por ejemplo, solo documentos de Office o solo imágenes).

Validar y revisar manualmente
Aunque los validadores automáticos ayudan, al final hace falta revisión humana para evaluar si un archivo recuperado es relevante, está completo, o es solo ruido. En contextos forenses, también es esencial documentar cada paso, conservar logs y mantener la cadena de custodia.

Cuando se combina todo esto con un enfoque ordenado y herramientas adecuadas, el data carving se convierte en una de las armas más potentes para recuperar información en situaciones límite, tanto en el ámbito profesional como en casos más mundanos (el clásico “he formateado la tarjeta de la cámara y tenía todas las fotos de las vacaciones”).

Al final, entender bien qué es el data carving, cómo aprovecha las firmas internas de los archivos y qué límites tiene con la fragmentación, marca la diferencia entre dar el caso por perdido o ser capaz de rescatar justo esos documentos o imágenes que parecían desaparecidos para siempre.

recuperar archivos borrados con TestDisk & PhotoRec-3
Artículo relacionado:
Cómo recuperar archivos borrados con TestDisk y PhotoRec