Skip to content

Thumbcache forense: evidencia en las cachés de miniaturas

Qué demuestran los archivos thumbcache_*.db en una investigación, cómo recuperar miniaturas borradas y las salvedades antes de incluir una en un informe.

Publicado el 6 min de lectura

Las cachés de miniaturas son uno de los pocos artefactos de Windows que conservan el contenido de un archivo y no solo metadatos sobre él. Imágenes, fotogramas de vídeo, primeras páginas de PDF u Office: si el Explorador dibujó una vista previa, a menudo queda una copia pequeña en la caché de miniaturas del usuario mucho después de que el original se haya eliminado, borrado de forma segura o movido a una unidad USB que nunca volvió. En casos basados en imágenes (CSAM, robo de datos, acoso), suele ser la evidencia más importante del disco.

Esta guía cubre qué contienen las cachés, qué demuestran y qué no, y cómo extraerlas y documentarlas en un informe. Puedes seguirla con Thumbcache Parser, que abre en el navegador todos los archivos mencionados aquí.

Dónde viven las cachés

Desde Windows Vista, las cachés son por usuario y están centralizadas:

%LOCALAPPDATA%\Microsoft\Windows\Explorer\
  thumbcache_16.db   thumbcache_32.db   thumbcache_48.db   thumbcache_96.db
  thumbcache_256.db  thumbcache_768.db  thumbcache_1280.db thumbcache_1920.db
  thumbcache_2560.db thumbcache_sr.db   thumbcache_wide.db thumbcache_exif.db
  thumbcache_wide_alternate.db  thumbcache_custom_stream.db  thumbcache_idx.db
  iconcache_16.db … iconcache_2560.db

El conjunto exacto depende de la versión de Windows (Vista y 7 solo tienen 32, 96, 256, 1024 y sr). Cada tamaño es una base de datos independiente, así que la misma imagen puede aparecer varias veces, y un tamaño puede seguir conservándola después de que otro haya sido purgado. Recoge siempre todas, además de thumbcache_idx.db y los archivos iconcache_*.db.

Antes de Vista, el Explorador escribía un Thumbs.db oculto en cada carpeta que mostraba en vista de miniaturas. Las versiones modernas de Windows todavía escriben Thumbs.db en recursos compartidos de red, salvo que una directiva lo desactive, así que los servidores de archivos también merecen una revisión. Consulta la guía de Thumbs.db para ese formato.

Qué demuestra una miniatura (y qué no)

Una entrada de caché existe porque el shell de Windows generó una miniatura de un archivo en ese perfil de usuario. En la práctica, eso ocurre cuando:

  • una carpeta se ve en cualquier vista de iconos lo bastante grande para mostrar miniaturas;
  • un archivo se selecciona con el panel de vista previa o de detalles abierto;
  • un cuadro de diálogo de abrir o guardar muestra la carpeta en vista de miniaturas;
  • una aplicación pide una miniatura al shell mediante IThumbnailCache.

Así que una miniatura es evidencia sólida de que el archivo existió en un volumen que ese perfil examinó, y de que su contenido coincidía con la imagen. Es evidencia débil de que el usuario miró ese archivo en concreto: puede haber pasado el cursor por una carpeta con cientos de archivos. Dilo con claridad en los informes; los peritos de la defensa lo harán.

Dos límites más:

  • Sin marca de tiempo por entrada. Las entradas modernas de thumbcache no llevan fecha. Usa las marcas de tiempo del $MFT del propio archivo .db como cota, y correlaciona con jump lists, archivos LNK, ShellBags y el índice de búsqueda.
  • Sin nombre de archivo. Las entradas se identifican por un ID de caché de 64 bits (ver más abajo). Solo el Catalog del antiguo Thumbs.db almacena los nombres originales.

Recuperar miniaturas eliminadas

Eliminar el archivo de origen no afecta a su miniatura. El Explorador solo limpia las cachés cuando se ejecuta la opción Miniaturas de Liberador de espacio en disco, cuando el mantenimiento automático lo decide, o cuando se reconstruye la caché. Aun así, una entrada liberada normalmente se deja donde estaba: la base de datos registra un offset «disponible», y el espacio posterior se reutiliza de forma perezosa.

Cada entrada empieza con los cuatro bytes CMMM, seguidos de su tamaño, así que las entradas antiguas son fáciles de tallar (carving). El parser recorre la cadena de entradas activa y después escanea todo el archivo en busca de la firma. Los aciertos posteriores al offset «disponible» de la cabecera se reportan como Slack; los aciertos en otros lugares (por ejemplo, tras una entrada corrupta) se reportan como Carved. Ambos aparecen con un borde rojo en la galería y quedan marcados en cada exportación.

Dos consejos prácticos:

  1. Revisa también las copias de sombra de volumen (VSS). Copias más antiguas de los archivos de caché pueden conservar miniaturas que ya se purgaron de las actuales.
  2. Talla el espacio no asignado en busca de CMMM. Cuando la propia base de datos de caché fue eliminada, sus entradas todavía pueden tallarse de clústeres libres y luego cargarse aquí como un bloque en bruto.

Vincular una miniatura con el archivo original

El ID de caché de cada entrada es el mismo valor que Windows Search almacena como System_ThumbnailCacheId para el archivo indexado. Si el archivo estaba en una ubicación indexada, la base de datos de búsqueda te da su ruta y otros metadatos:

  • Windows Vista a 10: %ProgramData%\Microsoft\Search\Data\Applications\Windows\Windows.edb (ESE)
  • Windows 11: Windows.db en la misma carpeta (SQLite)

Recoge la base de datos junto con sus logs de transacciones. Una base ESE copiada de un sistema en vivo suele estar «sucia» y necesita esentutl /r o /p sobre una copia antes de que las herramientas puedan abrirla. Después, suéltala en el Thumbcache Parser junto a los archivos de caché: cada miniatura indexada queda etiquetada con su ruta, nombre, tamaño y fecha de modificación originales, en el inspector y en todas las exportaciones.

Cachés de iconos

iconcache_*.db usa el mismo formato pero contiene iconos de aplicaciones y tipos de archivo. Es una fuente discreta de contexto de ejecución de programas. Una herramienta portable ejecutada desde un USB, o un instalador eliminado más tarde, puede dejar su icono como rastro.

Lista de comprobación de la recogida

  • Todos los thumbcache_*.db, thumbcache_idx.db e iconcache_*.db de cada perfil
  • Copias de sombra de la misma carpeta
  • Windows.edb / Windows.db más sus logs (edb*.log, edb.chk)
  • $MFT para las marcas de tiempo de los propios archivos de caché
  • Thumbs.db de carpetas de usuario, medios extraíbles y recursos compartidos de red

Los archivos están bloqueados mientras explorer.exe se ejecuta, así que usa el target ThumbCache de KAPE, FTK Imager, una copia de sombra, o extráelos de una imagen con Disk Image Parser y arrastra su exportación ZIP directamente al parser.

Informe

Para cada miniatura en la que te bases, registra el archivo de origen y su SHA-256, el offset de la entrada, el ID de caché, si estaba asignada o fue recuperada, y el MD5/SHA-256 de los bytes de imagen extraídos. El ZIP de evidencia del parser reúne las imágenes, un CSV, un volcado JSON y un informe HTML autocontenido con todo eso. Hachea la imagen exactamente como está almacenada en la base de datos, así que cualquiera que vuelva a extraer el mismo offset obtendrá el mismo hash.

Artículos relacionados

Thumbcache Viewer, Vinetto, suites forenses y análisis en el navegador comparados: plataformas, formatos, recuperación de entradas borradas y mapeo de nombres.
Estructura a nivel de byte de las bases thumbcache e iconcache de Windows, de Vista a Windows 11: cabecera, tipos de caché por versión y estructura de entrada.
Cómo Thumbs.db guarda miniaturas, nombres de archivo originales y fechas de modificación, por qué las imágenes Type 1 antiguas parecen corruptas y dónde sigue creándose.