¿Qué es LinkDate en Amcache? (glosario)
LinkDate es el PE TimeDateStamp. El linker lo escribe en el binario en el momento del build. Amcache lo lee desde la cabecera PE en el momento del inventario. Esa es toda la historia.
No es un timestamp del lado del host. El host no tiene nada que ver con este valor. Viaja con el binario. Un atacante puede fijarlo a lo que quiera, dejarlo a cero o elegir una fecha en 2007 para que el fichero parezca un software viejo y establecido. Muchos lo hacen.
El contraste con KeyLastWriteTimestamp#
| KeyLastWriteTimestamp | LinkDate | |
|---|---|---|
| Origen | Metadatos del registro, escritos por el appraiser | Cabecera PE, escrita por el linker |
| ¿Lo controla el atacante? | No | Sí |
| Responde a | ¿Cuándo registró Amcache esto? | ¿Cuándo se compiló el binario? |
| Bueno para | Aproximación del first-seen en el host | Agrupación por campaña de build |
| Resolución | Segundos | Segundos |
Confundir estos dos es el error más común con Amcache. La solución es no usar nunca, jamás, LinkDate para argumentar sobre cuándo apareció un binario en un host. Ver Timestamps de Amcache explicados para la versión larga.
Para qué sirve realmente#
Agrupación por build#
Ordena PEs no firmados por LinkDate. Busca 3-10 binarios sellados dentro del mismo día u hora. Eso es un atacante compilando su kit en una sentada y dejándolo caer en uno o varios hosts. Señal fuerte de campaña.
Import-Csv .\HOST_amcache_UnassociatedFileEntries.csv |
Where-Object { $_.IsPeFile -eq 'True' -and -not $_.Publisher } |
Sort-Object LinkDate |
Select LinkDate, Hash, FullPathDetección de BYOVD#
Drivers en DriverBinaries.csv con DriverTimeStamp de hace años pero KeyLastWriteTimestamp de esta semana tienen la forma clásica de BYOVD. Ver el glosario BYOVD.
Deriva del proceso de build#
"Nuestro CI siempre hace builds los lunes a las 03:00. Este es martes a las 14:00." Útil para captar cuándo se movió o se comprometió un pipeline de build interno.
Para qué no sirve#
- Tiempo de first-seen en el host. Usa
KeyLastWriteTimestamp. - Orden de llegada. Dos binarios con el mismo
LinkDatepueden haber llegado con meses de diferencia. - Identidad criptográfica. Muchos binarios sin relación comparten valores
LinkDate, especialmente cero.
Términos relacionados#
Artículos relacionados
- ¿Qué es KeyLastWriteTimestamp en Amcache? (glosario)
El tiempo de escritura de la clave Amcache en el Registro. Lo más cercano a 'cuándo el appraiser anotó esto'. El campo individual que los analistas nuevos confunden más a menudo con LinkDate.
- ¿Qué es Amcache ProgramId? (glosario)
ProgramId es el hash de identidad de aplicación de 44 caracteres que almacena Amcache. Estable entre hosts para la misma instalación. Atrapa recompilaciones y renombrados que Hash se pierde.
- ¿Qué es Root\InventoryApplicationFile? (glosario)
La clave principal de Amcache. Una subclave por PE que el appraiser inventarió, con hash, ruta, fabricante, fecha de enlace y una marca de escritura de registro. Donde se va el 90% del tiempo del analista.
- ¿Qué es Amcache FileId? (glosario)
FileId es '0000' más el SHA-1 de los primeros 31 MiB del archivo. Quita el prefijo antes de tirar a VirusTotal o no te devolverá nada en silencio.