Skip to content

Propiedades del índice de Windows Search explicadas

System.ItemPathDisplay, System.Search.GatherTime, System.Search.AutoSummary y las demás propiedades de Windows Search que importan en una investigación forense.

Publicado el 6 min de lectura

En resumen. Cada elemento del índice de Windows Search es una bolsa de propiedades del shell de Windows identificada por un WorkId. Una docena de ellas concentra casi todo el valor forense: System.ItemPathDisplay (ruta completa), System.Size, System.FileOwner, System.DateCreated / DateModified / DateAccessed (marcas de tiempo del sistema de archivos vistas al indexar), System.Search.GatherTime (cuándo procesó el elemento el indexador), System.Search.AutoSummary (un extracto del contenido), System.ItemType y System.Kind (qué es) y propiedades de URL para el historial web. Microsoft documenta qué significa cada propiedad, no cómo la guarda la base. Todas las fechas son FILETIME en UTC.

De dónde vienen las propiedades

El sistema de propiedades de Windows define nombres canónicos como System.ItemPathDisplay, cada uno con un identificador de formato y un identificador de propiedad (una PROPERTYKEY). El indexador aplica los controladores de propiedades a cada archivo y guarda los valores. En Windows.edb, cada propiedad es una columna con un nombre como 4447-System_ItemPathDisplay. En Windows.db es una fila cuyo ColumnId remite al nombre a través de SystemIndex_1_PropertyStore_Metadata. La comparación de formatos muestra ambas estructuras.

El prefijo numérico es propio de cada base. Guíate por el nombre. Las páginas de referencia de Microsoft dan el significado y el tipo de cada nombre, por ejemplo System.ItemPathDisplay.

Las propiedades que importan

Identidad y ubicación

PropiedadSignificado (Microsoft)Notas forenses
System.ItemPathDisplayRuta de visualización fácil de leer del elementoLa ruta que citas. Incluye la extensión. Localizada si existe un nombre localizado. Rutas UNC para recursos compartidos.
System.ItemUrlForma URL, con esquema (file:, iehistory:, mapi:…)Te dice qué tipo de elemento es: archivo, historial web, correo.
System.ItemFolderPathDisplayParte de carpeta de la rutaÚtil para agrupar carpetas de preparación.
System.FileName / System.ItemNameDisplayNombre de archivo / nombre mostradoEl nombre mostrado puede ocultar la extensión.
System.ComputerNameNombre del equipo donde se encuentra el elementoÚtil cuando se mezclan índices de varios equipos en un caso.

Los ejemplos de Microsoft para System.ItemPathDisplay incluyen una ruta local, una ruta UNC y una ruta de buzón: el índice cubre más que archivos locales.

Tipo

PropiedadSignificadoNotas forenses
System.ItemTypeTipo canónico, normalmente la extensión (.exe, .zip) o DirectoryExisten valores especiales, como ActivityHistoryItem para los registros de actividad.
System.ItemTypeTextTipo legible («Aplicación», «Documento de texto»)Localizado. No filtres por él.
System.KindCategoría asignada según la extensión: document, program, folder, link, webhistory…Microsoft asigna extensiones a categorías en la clave de registro KindMap. Multivalor.
System.FileAttributesAtributos de archivo Win32Atributos de oculto / sistema en archivos de usuario merecen una mirada.

Propietario y tamaño

PropiedadSignificadoNotas forenses
System.FileOwnerEl propietario del archivo, según el sistema de archivosDOMINIO\usuario o EQUIPO\usuario. El campo de atribución más sólido del índice, pero propietario no es autor: un administrador que copia un archivo puede convertirse en su propietario.
System.SizeTamaño en bytesTamaño en el momento de la indexación.

Tiempo

PropiedadSignificadoNotas forenses
System.DateCreatedFecha de creación del elementoCopiada del sistema de archivos al indexar.
System.DateModifiedÚltima modificaciónIgual.
System.DateAccessedÚltimo accesoIgual, y en NTFS la actualización del último acceso suele estar desactivada o ser poco precisa.
System.Search.GatherTimeCuándo el rastreador envió por última vez las propiedades del documentoEl reloj del propio indexador. No es una marca del sistema de archivos, así que el timestomping del archivo no la cambia.

Las cuatro son FILETIME: intervalos de 100 nanosegundos desde el 1 de enero de 1601, en UTC. En Windows.db, el analizador las lee como valores little-endian de 8 bytes, siguiendo la investigación pública, y conserva los bytes en bruto junto a la fecha decodificada.

Contenido

PropiedadSignificadoNotas forenses
System.Search.AutoSummaryUn resumen automático del texto completo del documentoEn la práctica, el principio del texto. Stroz Friedberg informa de hasta 1024 bytes en Windows 11.
System.Title, System.Author, System.Subject…Metadatos de documento de los controladores de propiedadesDocumentos de Office, PDF y correos llevan metadatos adicionales que conviene leer en la lista de propiedades en bruto.

Web y actividad

PropiedadSignificadoNotas forenses
System.Link.TargetUrlURL de destino de un enlace / elemento de historialEn Windows 11, Stroz Friedberg encontró aquí las URL visitadas.
System.ItemUrl con iehistory://{SID}/…Elemento del historial webEl SID vincula la entrada a un usuario.
Propiedades ActivityHistory (StartTime, EndTime, AppId)Registros del historial de actividadPresentes cuando System.ItemType es ActivityHistoryItem, según la misma investigación.

Leer las marcas de tiempo en conjunto

El gather time es el campo en el que un atacante rara vez piensa, y hace más útiles a los demás.

PatrónLectura probable
Gather time unos segundos o minutos después de DateModifiedEl indexador recogió un cambio reciente. Normal en archivos activos.
Gather time muy posterior a DateModifiedEl archivo se indexó más tarde: nueva ubicación indexada, reconstrucción del índice, reindexación o unidad reconectada.
DateCreated posterior a DateModifiedTípico de un archivo copiado o extraído conservando su fecha de modificación original. Busca el origen.
DateModified muy antiguo en un ejecutable depositado en una carpeta escribible por el usuario, gather time recientePosible timestomping o extracción de un comprimido. Revisa el diario USN y la MFT.
Gather time posterior al último inicio de sesión conocido del propietarioOtra persona u otro proceso escribió en esa ubicación, o el indexador se puso al día tarde.

El Windows Search Index Parser marca los elementos «indexados recientemente»: indexados después de su último cambio y dentro de las 24 horas previas a la indexación más reciente de la misma base. En una máquina incautada poco después de un incidente, eso resalta lo que cambió en el último día de actividad.

Trampas

  • Los valores son instantáneas. Todo salvo el gather time describe el archivo en el momento de indexarse. Un archivo modificado después y nunca reindexado muestra valores desfasados.
  • Localización. Los nombres mostrados y los textos de tipo cambian con el idioma del sistema. Filtra por System.ItemType, System.Kind o extensiones.
  • Propiedades multivalor. System.Kind y algunas otras contienen varios valores («program; executable»). Un analizador que solo guarda el primero puede perder información.
  • Ausente no es cero. Que falte una propiedad significa que ningún controlador la rellenó. No significa «vacío» ni «falso».
  • Almacenamiento no documentado. Microsoft documenta las propiedades, no la base. Cómo se codifica un valor en Windows.edb o Windows.db procede de investigación pública. Ante la duda, mira los bytes en bruto; por eso el analizador muestra todas las propiedades en bruto.

Artículos relacionados

Artículos relacionados