¿Con qué frecuencia se actualiza Amcache?
Aproximadamente a diario en workstations Windows 10/11. Cada 2-5 días en Server con Desktop Experience. Semanas en Server Core. Esa es la respuesta que la mayoría de la gente DFIR necesita oír primero, porque Amcache va con retraso respecto a la realidad y las timelines construidas sobre ella tienen que dar cuenta de ese retraso.
La cadencia viene de la tarea programada en \Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser. Los triggers combinan detección de idle con un trigger por tiempo con delay aleatorio, y el appraiser se salta corridas en batería. Los portátiles en Modern Standby pueden quedarse en intervalos de 36-48 horas porque el trigger de idle dispara menos a menudo cuando el dispositivo está en connected standby.
| Tipo de host | Retraso típico entre el en-disco y la entrada en Amcache |
|---|---|
| Workstation Windows 10/11 | Hasta ~24 horas |
| Server con Desktop Experience | 2-5 días |
| Server Core | Hasta una semana o más |
| Portátil en Modern Standby | Hasta 36-48 horas |
| Dispositivo en batería | Variable (el appraiser se salta en batería) |
Para precisión sub-hora en el primer-visto, usa Sysmon 11 (File Create), Security 4688 creación de proceso, o MFT $STANDARD_INFORMATION.CreationTime. Amcache es excelente en "presente en algún momento". Es malo en "presente en este segundo exacto".
Forzarlo a correr#
Si necesitas una hive fresca durante el triage:
Start-ScheduledTask `
-TaskPath '\Microsoft\Windows\Application Experience\' `
-TaskName 'Microsoft Compatibility Appraiser'
Get-ScheduledTaskInfo `
-TaskPath '\Microsoft\Windows\Application Experience\' `
-TaskName 'Microsoft Compatibility Appraiser'Espera 30-60 segundos, luego recoge de nuevo la hive y sus .LOG1 / .LOG2.
Cuando el appraiser no corre en absoluto#
Algunas señales comunes:
- La tarea está
Disabledo suLastRunTimecoincide con la fecha de instalación del host. HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection\AllowTelemetry = 0por GPO.- La distribución de
KeyLastWriteTimestampse corta de golpe en alguna fecha pasada.
En un host donde el appraiser está deshabilitado, Amcache está congelada. No es un artefacto útil para nada después de la deshabilitación. Pivota a Sysmon, EDR, EVTX y las hives del Registro en su lugar.
Para la referencia más amplia del appraiser, ve el glosario del Compatibility Appraiser. Para específicas de Server, ve Amcache en Windows Server.
Artículos relacionados
- ¿Es Amcache.hve un archivo de log?
No. Es una hive del Registro con el mismo formato binario que SYSTEM y NTUSER.DAT. Un árbol de claves tipadas, no una secuencia plana append-only.
- ¿Qué es el Compatibility Appraiser? (glosario)
La tarea programada que recorre el sistema de archivos, inventaria archivos PE, y escribe los registros en Amcache.hve. Entiende su cadencia o malinterpreta tu timeline.
- ¿Por qué mi Amcache.hve está vacío?
Tres causas comunes: el Compatibility Appraiser está desactivado, el host está recién imageado, o estás recolectando de un Server / Server Core donde el appraiser corre mucho menos a menudo.
- ¿Dónde está la clave del registro de Amcache?
Amcache es su propio archivo de hive en C:\Windows\AppCompat\Programs\Amcache.hve — no una clave bajo HKLM. Cuando es cargado por herramientas o por el propio Windows se monta como HKLM\Amcache.