¿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, FullPathClú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
LinkDateno necesariamente llegaron al host al mismo tiempo. - Identidad criptográfica. Muchos binarios comparten valores
de
LinkDate.
Términos relacionados#
- KeyLastWriteTimestamp — la marca de tiempo con la que más a menudo se confunde.
- FileId — la identidad criptográfica.
- InventoryApplicationFile — donde se almacena LinkDate.
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.