¿Por qué mi Amcache.hve está vacío?
Tres causas comunes, en orden aproximado de probabilidad:
1. El Compatibility Appraiser está desactivado#
Esta es la causa más común en servidores de producción y endpoints hardenizados. El archivo del hive existe, pero la tarea programada que escribe en él está desactivada, así que no se están añadiendo nuevas entradas.
Cómo comprobar:
# ¿Está habilitada la tarea?
Get-ScheduledTask `
-TaskPath '\Microsoft\Windows\Application Experience\' `
-TaskName 'Microsoft Compatibility Appraiser' |
Select-Object State, LastRunTime, LastTaskResult
# ¿Está la telemetría desactivada por GPO?
reg query 'HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection' /v AllowTelemetrySeñales de que el appraiser está desactivado:
- Tarea
State = Disabled. LastRunTimecoincide con la fecha de instalación del host o una fecha hace mucho tiempo.AllowTelemetry = 0(especialmente en Servers).
Si el appraiser está intencionadamente desactivado, Amcache no es un artefacto útil para eventos posteriores al desactivado. Pivota a Sysmon, EDR, log de eventos de Seguridad, MFT.
2. El host está recién instalado#
Un host Windows recién imageado tiene un Amcache casi vacío porque el appraiser no ha corrido aún.
Estaciones de trabajo: la primera pasada del appraiser típicamente se completa dentro de las 24 horas del primer arranque, a veces durante la experiencia inicial out-of-box.
Servidores: la primera pasada del appraiser puede tardar 2-5 días.
Comprueba el KeyLastWriteTimestamp más pequeño del hive contra
la fecha de instalación del host. Si coinciden y el host es
totalmente nuevo, el hive se poblará a medida que el appraiser
corra.
3. Estás recolectando de un Server (especialmente Server Core)#
Las cadencias de Server son mucho más lentas que las de estaciones de trabajo:
| Tipo de host | Cadencia del appraiser |
|---|---|
| Estación de trabajo (Windows 10/11) | ~24 horas |
| Server con Desktop Experience | 2-5 días |
| Server Core | Semanalmente o más |
| Server hardenizado / DC | Incluso menos |
Un hive de Server de 5-10 MB tras un año de operación es normal, no sospechoso. El Amcache de Server es genuinamente más escaso porque:
- Los servidores corren un conjunto estable de servicios, no muchos binarios ad-hoc.
- Pocos usuarios interactivos significan pocas rutas
\Users\que inventariar. - Los registros de driver y dispositivo son estables.
Ver Amcache en Windows Server para la referencia completa de servidor.
Causas menos comunes#
Volume Shadow Copy o retención de backup#
Si el host ha sido restaurado desde un backup o snapshot VSS recientemente, Amcache refleja el estado en el momento del snapshot, no el presente. Comprueba las marcas de tiempo del sistema de archivos del propio archivo del hive contra el uptime reportado del host.
Manipulación del atacante#
Raro. Si sospechas limpieza deliberada:
- Enumera las Volume Shadow Copies —
vssadmin list shadows. - Parsea el
Amcache.hvede cada shadow. - Diff contra el hive en vivo.
Entradas en shadows pero ausentes del live = evidencia de limpieza deliberada. Ver ¿Pueden los atacantes limpiar Amcache?.
Corrupción del hive#
Muy raro. Un hive parcialmente corrompido puede parsear con salida
truncada. AmcacheParser típicamente emite advertencias sobre
inconsistencias de celdas si esto está ocurriendo. Comprueba el
log de parseo en busca de advertencias.
Diagrama de flujo de diagnóstico#
- Comprueba el
StateyLastRunTimede la tarea programada. - Si está desactivada → causa raíz = appraiser desactivado. Pivota a otros artefactos.
- Si está habilitada pero
LastRunTimeestá obsoleto → comprueba el historial de la tarea en el Visor de Eventos (Microsoft-Windows-TaskScheduler/Operational) por fallos. - Si la tarea corre normalmente → comprueba la fecha de instalación del host.
- Si el host está recién instalado → espera y recolecta de nuevo.
- Si el host está establecido y el hive sigue pequeño →
comprueba
AllowTelemetryy la cadencia Server vs Workstation. - Si nada aplica y el hive debería tener datos ricos → enumera VSS, diff por manipulación.
Relacionado#
Artículos relacionados
- ¿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.
- ¿Qué contiene Amcache.hve?
Amcache.hve contiene registros de inventario para cada binario PE, driver y dispositivo conectado que el Compatibility Appraiser de Windows ha visto — con hashes SHA-1, rutas, publishers y marcas de tiempo.
- ¿Cuál es la diferencia entre un archivo .pf y una entrada de Amcache?
Los archivos .pf son registros de Windows Prefetch — prueba de que un binario se ejecutó, con marcas de tiempo de ejecución y listas de archivos cargados. Las entradas de Amcache registran presencia, con el hash SHA-1 y metadatos.
- ¿Es Amcache.hve un archivo de log?
No. Amcache.hve es un hive del registro de Windows — un árbol estructurado de claves-valores en el mismo formato binario que SYSTEM y NTUSER.DAT — no un log plano.