Amcache en Windows 11 y Windows 10: schema, cadencia y peculiaridades

Amcache alcanzó su forma madura y moderna en Windows 10 build 1709 (Fall Creators Update) y ha sido consistente en sus rasgos amplios desde entonces en Windows 10 y Windows 11. El hive en una estación de trabajo Windows 11 hoy se lee y analiza igual que en una estación de trabajo Windows 10 1809 en 2018 — pero un puñado de peculiaridades específicas de build se han acumulado a lo largo de los años, y conocerlas evita que malinterpretes la evidencia.

Esta página es la referencia por build para Windows moderno. Para los aspectos específicos de Server, ver Amcache en Windows Server. Para la referencia más amplia del artefacto, ver la referencia completa de Amcache.


El schema a través de los builds de Windows 10#

El schema Inventory* se añadió en Windows 10 build 1709 (Fall Creators Update, octubre de 2017). Antes de eso, Amcache en Windows 10 usaba solo las claves legacy Root\Programs y Root\File — datos mucho más escasos por entrada.

Las claves estrella Inventory* añadidas en 1709:

  • Root\InventoryApplication
  • Root\InventoryApplicationFile
  • Root\InventoryDriverBinary
  • Root\InventoryDeviceContainer
  • Root\InventoryDevicePnp

Las actualizaciones de funcionalidad posteriores de Windows 10 han añadido o refinado claves pero han mantenido la estructura general estable:

Build Cambio notable de Amcache
1709 Schema Inventory* introducido.
1803 InventoryApplicationFramework añadido.
1809 InventoryApplicationShortcut añadido (menú Inicio / accesos directos anclados).
1903 InventoryDeviceInterface añadido.
1909 Refinamientos del schema; no hay claves nuevas mayores.
2004 InventoryDriverPackage añadido (metadatos del paquete de driver).
20H2 Schema estable.
21H1 / 21H2 Schema estable.
22H2 Última actualización de funcionalidad; schema estable.

En la práctica: cualquier cosa desde Windows 10 build 1709 en adelante tiene el schema moderno Inventory* y se parsea limpiamente con los builds actuales de AmcacheParser.


El schema en Windows 11#

Windows 11 hereda el schema de finales de Windows 10 con adiciones menores:

  • InventoryMiscellaneousUUPInfo registra metadatos de paquetes Unified Update Platform. Raramente útil en DFIR.
  • InventoryDeviceMediaClass registra de forma más agresiva sub-clasificaciones de dispositivos de audio / video. Útil para distinguir dispositivos USB-audio de dispositivos USB-mass-storage cuando un único contenedor USB expone múltiples interfaces.
  • Los registros de driver bajo InventoryDriverBinary incluyen ligeramente más campos de metadatos de paquete, particularmente alrededor del estado de firma WHQL.

No hay cambios incompatibles entre Windows 10 (post-1709) y Windows 11 desde el punto de vista del parsing. El mismo binario AmcacheParser.exe maneja ambos.


Cadencia del appraiser#

La tarea programada Compatibility Appraiser puebla el hive. Su cadencia en Windows moderno:

  • Estación de trabajo Windows 11: aproximadamente diaria, típicamente una vez por la noche cuando el host está inactivo. El disparador exacto es una combinación de disparadores de idle-time y un disparador basado en tiempo con retraso aleatorio.
  • Estación de trabajo Windows 10: mismo patrón.
  • Tablet / convertible: menos frecuente — el appraiser es consciente de la energía y omite cuando está con batería.
  • Estación de trabajo unida al dominio con Microsoft Endpoint Manager: algunas políticas de MEM ajustan la cadencia; el comportamiento puede variar.

La consecuencia práctica: un host Windows 11 recién instalado que lleva corriendo menos de 24 horas puede tener un Amcache muy delgado. A la inversa, una estación de trabajo que lleva años encendida tiene un hive con miles de entradas que abarcan la historia completa.


Tamaño del hive en Windows moderno#

Tamaños típicos:

Carga de trabajo Tamaño típico del hive Notas
Instalación fresca de Windows 11 (1 semana) 2–4 MB Pocas entradas; datos ligeros de driver / dispositivo.
Estación de trabajo estándar de oficina (6 meses) 8–15 MB Cientos de filas de InventoryApplicationFile; registros completos de driver y dispositivo.
Estación de trabajo de desarrollador (1+ año) 25–50 MB Miles de entradas de archivo por artefactos de build; muchos clusters de LinkDate.
Server (1+ año) 5–15 MB Más pequeño — menos apps interactivas, alcance más estrecho.

Un hive mucho más pequeño de lo que sugiere la carga de trabajo puede ser una bandera de que el appraiser está desactivado (intencionalmente o por sabotaje) — ver Recuperar evidencia de binarios borrados desde Amcache.


Peculiaridades específicas de build que vale la pena conocer#

Un puñado de peculiaridades que pillan desprevenidos a los analistas:

Caso límite de truncamiento de hash en Windows 10 1909 / 2004#

En un pequeño subconjunto de hives Windows 10 1909 y 2004, los binarios muy grandes (>~1 GB) ocasionalmente tienen un FileId vacío en lugar de un FileId de hash de prefijo. El comportamiento se resolvió presumiblemente en actualizaciones acumulativas posteriores pero aparece en hives archivados de esa era. Trata las filas con Hash vacío para archivos grandes como "sin hash capturado" en lugar de "el binario es único".

Churn de device-container en Windows 11 22H2+#

Windows 11 22H2 introdujo una re-enumeración más agresiva de contenedores de dispositivo a través de reinicios de Windows Update, lo que puede producir filas "nuevas" de InventoryDeviceContainer para dispositivos que han estado en el host durante meses. El KeyLastWriteTimestamp en estas filas refleja la re-enumeración, no la primera conexión. Cruza con setupapi.dev.log y USBSTOR para marcas de tiempo reales de primera conexión.

Inestabilidad de ProgramId a través de upgrades de funcionalidad de Windows#

Una estación de trabajo que fue actualizada de Windows 10 21H2 a Windows 11 22H2 puede tener diferentes valores ProgramId para la misma aplicación antes y después del upgrade. El pivote cross-host de ProgramId sigue funcionando para hosts en el mismo build mayor; a través de upgrades, pivota también sobre Hash (más estable a través de upgrades) — ver Amcache ProgramId explicado.

Churn de inbox apps en Windows 11#

Windows 11 envía y elimina inbox apps (las apps de tienda incorporadas) con una cadencia más rápida que Windows 10. Ves filas frecuentes de InventoryApplicationFile para la capa AppX que van y vienen entre actualizaciones de funcionalidad. Estas normalmente se filtran con seguridad por Publisher = 'Microsoft Corporation' y una ruta estilo AppX bajo \Program Files\WindowsApps\.

Modern Standby / connected standby y el appraiser#

En portátiles en Modern Standby / connected standby, las semánticas del disparador del appraiser difieren de un desktop. Puedes ver intervalos del appraiser ligeramente más largos (a veces 36–48 horas) en portátiles muy usados porque el disparador de idle-time rara vez se dispara. Ten esto en cuenta al razonar sobre tiempos de first-seen.


Diferencias con Windows más antiguo#

Tres cosas para recordar cuando se compara Amcache de Windows 10 / 11 con Windows más antiguo:

vs Windows 7 / Server 2008 R2#

Sin equivalente — Windows 7 tiene RecentFileCache.bcf, un archivo binario plano. Ver Dónde está Amcache.hve en disco para la ruta y el parser.

vs Windows 8 / 8.1 / Server 2012 / 2012 R2#

Amcache.hve existe pero solo con las claves legacy Programs y File. AmcacheParser produce *_ProgramEntries.csv pero ningún *_UnassociatedFileEntries.csv. Mucho menos detalle por archivo.

vs Windows 10 temprano (pre-1709)#

Mismo schema solo-legacy que Windows 8.x. El gran cambio a Inventory* fue 1709.


Implicaciones prácticas para triage#

Algunas reglas que se siguen de todo lo anterior:

  1. Para Windows 10 1709+ y Windows 11, los CSVs de AmcacheParser tienen *_UnassociatedFileEntries.csv y *_AssociatedFileEntries.csv. Ese es el foco del triage.
  2. Para Windows 8 / 8.1 / Server 2012, céntrate en *_ProgramEntries.csv y reconoce que los metadatos por archivo son escasos.
  3. Para Windows 7, usa un parser dedicado de RecentFileCache.bcf — AmcacheParser no lo maneja.
  4. Para builds de Server, permite intervalos más largos del appraiser; no saques conclusiones de first-seen de grano fino en escalas de tiempo de hora.
  5. Para portátiles en Modern Standby, permite variabilidad similar.

Ver también#

Para explorar un hive de Windows 10 u 11 ahora mismo sin instalar nada, suelta el archivo en la página de inicio del parser — se parsea enteramente en tu navegador.

Artículos relacionados

Volver a todos los artículos