¿Qué es Shimcache (AppCompatCache)? (glosario)
Shimcache (también llamada AppCompatCache) es la caché mantenida por el kernel que registra hasta 1024 binarios PE que el loader de Windows ha tocado, con ruta del fichero, marca de modificación y un flag de ejecución. Vive como un único valor binario dentro de la hive SYSTEM. Más vieja que Amcache. Más pequeña. Más escasa. Constantemente confundida con Amcache, y la confusión produce hallazgos erróneos.
Las distinciones clave: Shimcache es más corta, sin hashes, mantenida por el kernel y volcada al apagar. Amcache es más larga, lleva hashes, mantenida en modo usuario y escrita continuamente.
Shimcache vs Amcache#
| Shimcache | Amcache | |
|---|---|---|
| Almacenamiento | Hive SYSTEM, un único valor binario | Amcache.hve independiente |
| Mantenedor | Loader del kernel | Tarea programada en modo usuario (appraiser) |
| Entradas máximas | 1024 (LRU) | Efectivamente ilimitado |
| Hash | Ninguno | SHA-1 de los primeros 31 MiB |
| Fabricante / versión | Ninguno | Sí |
ProgramId |
Ninguno | Sí |
| Fresco en sistema vivo | No (requiere apagado o memoria) | Sí |
| Disponible pre Win 8 | Sí (desde XP) | No |
| Cadencia en Server | Activa | A menudo muy lenta |
Para cobertura completa, ver Amcache vs Shimcache.
Cuándo gana Shimcache#
- "¿Tocó el loader este binario?" El trabajo entero de Shimcache.
- Adquisiciones solo en memoria. El
shimcachememde Volatility extrae limpiamente de un dump RAM. - Hosts pre Win-10-1709 donde el esquema moderno de Amcache aún no existe.
- Hosts endurecidos con el appraiser desactivado. Shimcache la mantiene el kernel; que el appraiser esté apagado no le afecta.
Cuándo gana Amcache#
- Hashes para VirusTotal. Shimcache no puede ayudar.
- Búsquedas entre hosts. Shimcache no tiene hash ni
ProgramId, solo rutas. - Evidencia de drivers y dispositivos. Shimcache es solo PE en espacio usuario.
- Triaje en un sistema vivo. Amcache está al día en disco; Shimcache está obsoleta hasta el reinicio.
Usa ambos#
Siempre. Se corroboran entre sí:
- En ambos: hallazgo fuerte de "presente y tocado por el loader".
- Solo Shimcache: el loader lo tocó pero el appraiser no ha llegado, o el appraiser está apagado.
- Solo Amcache: presente pero el loader no lo ha tocado en la ventana actual de 1024 entradas, o Shimcache rotó.
Términos relacionados#
Artículos relacionados
- ¿Qué es SRUM (SRUDB.dat)? (glosario)
SRUM es la base ESE que Windows usa para registrar el uso de recursos por aplicación, por hora, durante 30-60 días. El único artefacto Windows con totales de bytes de red por aplicación. Crítico para exfiltración.
- ¿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 Windows Prefetch? (glosario)
Windows Prefetch es el directorio de ficheros .pf que prueba ejecución. Hasta 8-10 tiempos de ejecución por binario más los ficheros cargados en los primeros diez segundos. La evidencia de ejecución más fuerte de Windows.
- ¿Qué es LinkDate en Amcache? (glosario)
LinkDate es el PE TimeDateStamp. Controlable por el atacante. Úsalo para agrupar builds, no para líneas de tiempo de host.