¿Qué es LinkDate en Amcache? (glosario)

LinkDate es el TimeDateStamp de la cabecera PE — el valor que el linker estampó en el binario en tiempo de build. Amcache lo lee de cada PE que inventaria y lo almacena como una cadena en la entrada.

No es una marca de tiempo del lado del host. Es lo más cercano que tiene Windows DFIR a una "marca de tiempo huella del binario", y es controlable por el atacante.

Cómo se diferencia de KeyLastWriteTimestamp#

KeyLastWriteTimestamp LinkDate
De dónde viene Metadatos del registro, escritos por el appraiser Cabecera PE, escrita por el linker
Controlable por el atacante No (lado del host) Sí (lado del build)
Responde "¿Cuándo registró Amcache esto?" "¿Cuándo se construyó este binario?"
Útil para Aproximaciones de primer visto del lado del host Agrupación de campañas de build
Resolución Precisión de segundo Precisión de segundo

Confundir estas dos es el error más común de Amcache. Ver Marcas de tiempo de Amcache explicadas para la referencia completa.

Para qué es útil LinkDate#

Agrupación de campañas de build#

Ordena los binarios sospechosos por LinkDate:

Import-Csv .\HOST_amcache_UnassociatedFileEntries.csv |
  Where-Object { $_.IsPeFile -eq 'True' -and -not $_.Publisher } |
  Sort-Object LinkDate |
  Select-Object LinkDate, Hash, FullPath

Clústeres apretados — 3 a 10 binarios con valores de LinkDate dentro del mismo día u hora — son característicos de una sola campaña de atacante. Los atacantes frecuentemente compilan su toolkit completo en una sentada, y las marcas de tiempo de build se agrupan.

Señales rojas de edad de driver#

Para investigaciones BYOVD (Bring-Your-Own-Vulnerable-Driver), ordena *_DriverBinaries.csv por DriverTimeStamp (el equivalente de LinkDate del lado del driver). Drivers antiguos pero firmados (compilados en 2014, pero apareciendo en Amcache hoy) son un indicador fuerte de BYOVD.

Verificación de build interno#

"Nuestros builds de herramientas internas siempre llevan linkdate los lunes a las 03:00 UTC. Este es martes a las 14:00 — investigar." Útil para detectar deriva en el proceso interno de build.

Para qué LinkDate NO es útil#

  • Hora de primer visto en host. Usa KeyLastWriteTimestamp.
  • Orden de llegada. Dos binarios con el mismo LinkDate no necesariamente llegaron al host al mismo tiempo.
  • Identidad criptográfica. Muchos binarios comparten valores de LinkDate.

Términos relacionados#

Artículos relacionados

  • ¿Qué es KeyLastWriteTimestamp en Amcache? (glosario)

    KeyLastWriteTimestamp es el tiempo de última escritura a nivel del registro de una entrada de Amcache — lo más cercano que expone Amcache a 'cuándo el appraiser registró este archivo'.

  • ¿Qué es Amcache ProgramId? (glosario)

    ProgramId es el hash de identidad de aplicación de 44 caracteres que Amcache asigna a cada aplicación lógica. El mismo ProgramId en hosts diferentes significa la misma instalación de aplicación.

  • ¿Qué es Root\InventoryApplicationFile? (glosario)

    InventoryApplicationFile es la clave estrella del registro de Amcache — una subclave por cada binario PE inventariado por el appraiser, con ruta, SHA-1, publisher, fecha de link y marcas de tiempo.

  • ¿Qué es Amcache FileId? (glosario)

    FileId es el identificador de 41 caracteres que Amcache almacena para cada archivo — '0000' + el SHA-1 hex de los primeros 31 MiB del archivo.

Volver a todos los artículos