Amcache vs SRUM: presencia vs uso de recursos en ventana larga
Si has leído Amcache vs Prefetch y Amcache vs ShimCache, el tercer artefacto de evidencia de ejecución de Windows que hay que conocer es SRUM — el System Resource Usage Monitor.
SRUM y Amcache son aún más diferentes entre sí de lo que son Amcache y Prefetch. Solo se solapan en que ambos registran "binarios que hicieron algo en este host". Más allá de eso responden preguntas muy diferentes.
Las diferencias estrella:
SRUM registra uso de recursos por aplicación en una ventana de 30-60 días. Amcache registra presencia con metadatos ricos, con una retención mucho más larga que esa.
Para la referencia más amplia de Amcache, ver la referencia completa de Amcache.
Qué es SRUM#
SRUM es la base de datos que respalda el System Resource Usage Monitor de Windows, la característica que alimenta los paneles de "Uso de datos" y "Uso de energía" en la configuración moderna de Windows. Vive en:
C:\Windows\System32\sru\SRUDB.dat
SRUDB.dat es una base de datos ESE (el mismo formato que
mailbox.edb o la base de datos de Active Directory) con
múltiples tablas, las más útiles de las cuales son:
| Tabla | Contenido |
|---|---|
Application Resource Usage |
Tiempo de CPU, bytes de working-set, I/O por aplicación por hora. |
Network Usage |
Bytes de red enviados / recibidos por aplicación por hora. |
Push Notification |
Actividad de notificaciones toast / push por aplicación. |
Energy Estimation |
Estimaciones de consumo de energía por aplicación. |
Cada fila está bucketizada por hora y por aplicación. La "aplicación" se identifica por una ruta de ejecutable o AppID. Los datos de SRUM se actualizan continuamente por el servicio SRUM y se agregan diariamente en agregados a largo plazo.
La retención de SRUM es típicamente 30–60 días pero varía según build y configuración.
La diferencia fundamental#
| Propiedad | SRUM | Amcache |
|---|---|---|
| Almacenamiento | SRUDB.dat (base de datos ESE) |
Amcache.hve (hive del registro) |
| Granularidad | Por aplicación, por hora | Por archivo |
| ¿Registra hash? | No | Sí (SHA-1) |
| ¿Registra ruta completa? | Sí | Sí |
| ¿Registra publisher? | No | Sí |
| ¿Registra ejecución? | Sí (implícitamente — si uso > 0) | No (solo presencia) |
| ¿Registra CPU / red / I/O? | Sí | No |
| ¿Registra cuándo corrió? | Sí — a la hora. | No (solo hora de inventario). |
| Retención | 30–60 días típico | Mucho más largo (años en hosts de larga vida). |
| Granularidad de marcas de tiempo | Buckets de hora | Segundo |
| ¿Fácil de parsear? | Moderado (ESE — usar SrumECmd) |
Fácil (usar AmcacheParser) |
Los dos artefactos son complementarios, no se solapan. Usa SRUM cuando te importe el uso de recursos; usa Amcache cuando te importe la presencia y metadatos.
Cuándo gana SRUM#
"¿Cuánta red envió este binario?"#
Amcache: sin respuesta. SRUM: bytes-enviados / bytes-recibidos por aplicación por hora. Crítico para investigaciones de exfiltración de datos.
"¿Qué aplicaciones corrieron en los últimos 30 días?"#
Amcache: sin datos de ejecución. SRUM: cada aplicación con CPU o I/O no-cero en sus buckets de hora corrió en esa hora.
"¿Usó este binario la red en un momento sospechoso?"#
SRUM es el único artefacto que te da un desglose por hora de actividad de red por aplicación. Cruza con logs de VPN / firewall para identificar ventanas de exfiltración.
"¿Cuál fue el perfil de uso de recursos del host en los días anteriores al incidente?"#
SRUM es lo más cercano que Windows incluye a un "grabador de rendimiento siempre activo". Los picos en CPU, red o I/O suelen apuntar a actividad del atacante.
Cuándo gana Amcache#
"¿Estuvo este binario presente en el host?"#
SRUM solo registra binarios que hicieron algo. Un binario que estuvo en disco pero nunca corrió (o nunca usó recursos medibles) no aparece en SRUM. Amcache lo captura.
"¿Cuál es el SHA-1 de este binario?"#
SRUM no hashea binarios. Amcache sí. Necesitas Amcache para enriquecimiento de VirusTotal o feed de TI.
"Más allá de la ventana de 30-60 días de SRUM"#
La retención de SRUM es corta. Amcache rutinariamente retiene entradas durante meses o años en estaciones de trabajo de larga vida. Para investigaciones que cubren eventos de hace más de ~60 días, Amcache suele ser el único artefacto con los datos.
"Evidencia de driver / dispositivo"#
SRUM se trata de aplicaciones y uso de recursos. Amcache tiene
schemas dedicados InventoryDriverBinary y
InventoryDeviceContainer para artefactos de modo kernel y
dispositivo.
"Hunt cross-host por hash o ProgramId"#
SRUM no tiene hashes ni ProgramIds. Amcache sí. Ver
Movimiento lateral y pivote ProgramId de Amcache.
El emparejamiento clásico SRUM + Amcache#
La combinación es más potente para investigaciones de exfiltración:
- Desde SRUM, encuentra aplicaciones con uso de red anómalo
en la ventana de exfil sospechada (p. ej. filas de
Network Usagemostrando gigabytes de bytes-enviados para un binario que normalmente no envía nada). - Desde Amcache, toma la ruta o el nombre del ejecutable del
mismo binario y busca su
Hash,Publisher,LinkDateyKeyLastWriteTimestamp. Ahora tienes un hash de contenido para enviar a VirusTotal y una aproximación de first-seen para cuándo llegó el binario. - Desde Prefetch, confirma marcas de tiempo de ejecución que se alineen con los picos de red de SRUM.
Ese join a tres bandas — Prefetch (cuándo corrió) + SRUM (qué hizo) + Amcache (qué es) — es el flujo de trabajo canónico de evidencia de ejecución de Windows.
Tabla de decisión rápida#
| Tu pregunta | SRUM | Amcache |
|---|---|---|
| ¿Estuvo el binario X en este host? | parcial (solo si usó recursos) | sí |
| ¿Cuál es el SHA-1 del binario X? | ✗ | ✓ |
| ¿Cuándo apareció el binario X por primera vez? | solo si usó recursos | ✓ |
| ¿Usó el binario X la red? | ✓ | ✗ |
| ¿Cuántos bytes envió el binario X? | ✓ | ✗ |
| ¿Cuál fue el perfil de CPU del host la semana pasada? | ✓ | ✗ |
| ¿Presencia de ventana larga (>60 días)? | ✗ | ✓ |
| ¿Evidencia de driver / dispositivo? | ✗ | ✓ |
| ¿Hunt cross-host? | ✗ | ✓ |
Ver también#
- Referencia completa de Amcache — el artefacto al completo.
- Amcache vs Prefetch — comparación de evidencia de ejecución.
- Amcache vs ShimCache — el otro artefacto de evidencia de presencia.
- Amcache para investigación de malware — cómo los cuatro artefactos se combinan en un playbook real de intrusión.
Para una mirada rápida del lado del navegador a tu hive, suelta un archivo en la página de inicio del parser — se parsea enteramente en tu navegador.
Artículos relacionados
- Amcache vs ShimCache: cuándo gana cada artefacto
ShimCache y Amcache ambos registran binarios que tocaron un host Windows. Son mecanismos diferentes con límites diferentes — aquí cuándo usar cada uno y qué prueba realmente su solapamiento.
- Amcache vs Prefetch: qué prueba realmente cada uno
Amcache registra presencia; Prefetch registra ejecución. Una guía práctica de cuándo usar cada uno, en qué se solapan y cómo combinarlos en una timeline DFIR.
- Volatility y Amcache: extraer el hive de imágenes de memoria
Una guía práctica para recuperar Amcache de una imagen de memoria de Windows usando Volatility — cuándo la recuperación del lado de memoria es la única opción, qué plugins usar y cómo entregar a AmcacheParser.
- Plugin amcache de RegRipper: qué hace y cuándo usarlo
Una guía práctica del plugin amcache de RegRipper — qué parsea, en qué se diferencia su salida de texto del CSV de AmcacheParser y cuándo recurrir a él en lugar de (o junto con) la herramienta de Zimmerman.