Windows Forensics: Artefactos Clave para Investigaciones DFIR
Analisis detallado de los artefactos forenses mas importantes en Windows: Registry hives (SAM, SYSTEM, SOFTWARE, NTUSER.DAT), Prefetch, AmCache, ShimCache, SRUM y su aplicacion practica en investigaciones DFIR.
Windows como fuente de evidencia forense
Windows es el sistema operativo mas frecuente en investigaciones DFIR corporativas. Cada version acumula capas de artefactos forenses que documentan la actividad del sistema, las acciones del usuario y la ejecucion de programas. Muchos de estos artefactos fueron disenados para mejorar el rendimiento o la compatibilidad, no para fines forenses, pero proporcionan informacion invaluable para reconstruir incidentes.
Este articulo cubre los artefactos mas importantes, donde encontrarlos, como extraerlos y que informacion forense aportan. Nos centramos en los que demuestran ejecucion de programas, acceso a recursos y actividad del usuario, que son los tres pilares de la mayoria de investigaciones.
Registry hives: el ADN de Windows
El Registro de Windows es una base de datos jerarquica que almacena la configuracion del sistema operativo, las aplicaciones y los usuarios. Desde la perspectiva forense, contiene evidencia sobre la configuracion del sistema en el momento del incidente, los programas instalados, los dispositivos conectados, las redes accedidas y mucho mas.
SAM (Security Account Manager)
La hive SAM (C:\Windows\System32\config\SAM) contiene las cuentas de usuario locales, sus SIDs, los hashes de contrasenas y las politicas de contrasena del sistema.
En una investigacion, SAM revela:
Las cuentas locales existentes, incluyendo cuentas creadas por el atacante. Busca cuentas creadas recientemente con nombres genericos (admin, support, backup) o con privilegios de administrador.
Los ultimos timestamps de login para cada cuenta. Un login a las 03:00 en una cuenta de servicio que normalmente no se usa es una anomalia que merece investigacion.
Las politicas de contrasena configuradas. Politicas debiles (sin complejidad, sin bloqueo tras intentos fallidos) ayudan a explicar como el atacante pudo obtener acceso.
Para analizar SAM necesitas la hive SYSTEM tambien, ya que contiene la clave de cifrado (boot key) necesaria para descifrar los hashes.
# Extraer informacion de SAM con RegRipper
rip.exe -r SAM -p samparse
# Con secretsdump de Impacket (requiere SAM + SYSTEM)
secretsdump.py -sam SAM -system SYSTEM LOCAL
SYSTEM hive
La hive SYSTEM (C:\Windows\System32\config\SYSTEM) contiene la configuracion del hardware, servicios, drivers y red del sistema.
Los artefactos forenses clave en SYSTEM incluyen:
CurrentControlSet y ControlSets. Windows mantiene al menos dos ControlSets. El valor Select\Current indica cual esta activo. Esto es relevante porque los cambios de configuracion pueden estar en un ControlSet diferente al activo.
Servicios instalados (SYSTEM\CurrentControlSet\Services). Los atacantes frecuentemente instalan servicios maliciosos para persistencia. Busca servicios con rutas inusuales, binarios en directorios temporales o nombres que imitan servicios legitimos.
Configuracion de red (SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces). Direcciones IP, DNS configurados, DHCP lease information. Util para correlacionar con logs de red.
ShimCache/AppCompatCache (SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache). Artefacto de ejecucion que veremos en detalle mas adelante.
USB device history (SYSTEM\CurrentControlSet\Enum\USBSTOR y USB). Registra cada dispositivo USB conectado al sistema con timestamps de primera y ultima conexion.
Zona horaria (SYSTEM\CurrentControlSet\Control\TimeZoneInformation). Critico para normalizar timestamps en el timeline analysis.
SOFTWARE hive
La hive SOFTWARE (C:\Windows\System32\config\SOFTWARE) almacena la configuracion de las aplicaciones instaladas y del propio sistema operativo.
Artefactos forenses relevantes:
Programas instalados (SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall). Lista de aplicaciones con fechas de instalacion. Busca herramientas de hacking (Mimikatz, PsExec, WinSCP) o software de acceso remoto no autorizado.
NetworkList (SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList). Historial de redes WiFi y cableadas a las que el sistema se ha conectado, con timestamps de primera y ultima conexion y tipo de red (publica/privada/dominio).
AmCache.hve. Aunque tecnicamente es una hive separada (C:\Windows\AppCompat\Programs\Amcache.hve), su estructura y analisis se abordan junto con SOFTWARE. Contiene evidencia detallada de ejecucion de programas.
Run y RunOnce keys (SOFTWARE\Microsoft\Windows\CurrentVersion\Run). Mecanismos de persistencia clasicos. Cualquier entrada sospechosa aqui indica que el atacante quiere que su malware sobreviva a reinicios.
NTUSER.DAT y UsrClass.dat
Cada perfil de usuario tiene su propia hive NTUSER.DAT (C:\Users{username}\NTUSER.DAT) y UsrClass.dat (C:\Users{username}\AppData\Local\Microsoft\Windows\UsrClass.dat).
NTUSER.DAT contiene:
UserAssist (NTUSER.DAT\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist). Registra programas ejecutados a traves del shell de Windows (doble click en Explorer, accesos directos, menu Inicio). Los nombres estan codificados en ROT13. Incluye contadores de ejecucion y timestamp de ultima ejecucion.
RecentDocs y MRU lists. Documentos abiertos recientemente, busquedas realizadas, rutas accedidas. Util para determinar a que datos accedio el usuario (o el atacante usando su cuenta).
TypedPaths y TypedURLs. URLs escritas manualmente en Explorer e Internet Explorer. Pueden revelar acceso a comparticiones de red, servidores internos o sitios web maliciosos.
UsrClass.dat contiene ShellBags, que documentan la navegacion por directorios en Windows Explorer, incluyendo carpetas de red y dispositivos USB. Incluso si la carpeta ya no existe, el ShellBag persiste.
# Analizar UserAssist con RegRipper
rip.exe -r NTUSER.DAT -p userassist
# Analizar ShellBags con ShellBags Explorer (Eric Zimmerman)
SBECmd.exe -d "C:\Users\sospechoso" --csv output_shellbags
Prefetch: evidencia de ejecucion de programas
El directorio C:\Windows\Prefetch contiene archivos .pf que Windows crea para acelerar la carga de aplicaciones. Desde la perspectiva forense, Prefetch es uno de los artefactos mas valiosos porque demuestra de forma inequivoca que un programa se ejecuto en el sistema.
Cada archivo Prefetch tiene un nombre con el formato NOMBRE-HASH.pf, donde el hash se calcula a partir de la ruta completa del ejecutable. Esto significa que el mismo programa ejecutado desde dos rutas diferentes genera dos archivos Prefetch distintos.
La informacion forense que contiene un archivo Prefetch incluye:
Nombre y ruta del ejecutable.
Timestamp de ultima ejecucion y, en Windows 8 y posteriores, los timestamps de las ultimas ocho ejecuciones.
Contador de ejecuciones (cuantas veces se ejecuto el programa).
Lista de archivos y directorios accedidos en los primeros 10 segundos de ejecucion. Esta lista es especialmente util porque puede revelar DLLs cargadas, ficheros de configuracion leidos y otros recursos accedidos por el malware.
Volumen del que se ejecuto, incluyendo el numero de serie del volumen.
# Analizar Prefetch con PECmd (Eric Zimmerman)
PECmd.exe -d "C:\Windows\Prefetch" --csv output_prefetch -q
# Analizar un archivo Prefetch individual
PECmd.exe -f "C:\Windows\Prefetch\CMD.EXE-4A81B364.pf"
Limitaciones a tener en cuenta: Prefetch esta deshabilitado por defecto en Windows Server (aunque puede habilitarse). En sistemas con SSD, Windows 10 y posteriores utilizan SuperFetch/SysMain, que puede modificar el comportamiento del Prefetch. El directorio tiene un limite de 1024 archivos (128 en versiones anteriores a Windows 8), por lo que en sistemas con mucha actividad, los archivos mas antiguos se eliminan automaticamente.
AmCache: registro de aplicaciones con hashes
AmCache.hve (C:\Windows\AppCompat\Programs\Amcache.hve) es una hive de registro que documenta la ejecucion y la instalacion de aplicaciones. Su valor forense principal es que almacena el hash SHA1 del ejecutable, lo que permite identificar el malware incluso si ha sido renombrado.
La informacion que registra AmCache incluye:
Ruta completa del ejecutable, hash SHA1, tamano del archivo, nombre del producto, version, publisher y timestamp de primera ejecucion o instalacion.
Para programas instalados via MSI, registra detalles adicionales como el GUID del instalador.
Programas ejecutados que no necesariamente estan instalados. Un ejecutable copiado a disco y ejecutado una sola vez aparecera en AmCache.
La key InventoryApplicationFile (en versiones recientes de Windows 10 y 11) contiene la informacion mas completa. En versiones anteriores, los datos estan en la key File.
# Analizar AmCache con AmcacheParser (Eric Zimmerman)
AmcacheParser.exe -f "C:\Windows\AppCompat\Programs\Amcache.hve" \
--csv output_amcache -i
AmCache es particularmente util cuando el atacante ha eliminado el ejecutable del disco. El hash SHA1 registrado en AmCache puede buscarse en plataformas de inteligencia como VirusTotal o MalwareBazaar para identificar la familia de malware.
ShimCache (AppCompatCache): historial de ejecucion en SYSTEM
ShimCache, tambien conocido como AppCompatCache, es un artefacto almacenado en la hive SYSTEM (ControlSet\Control\Session Manager\AppCompatCache\AppCompatCache). Fue disenado para el Application Compatibility Framework de Windows, pero desde la perspectiva forense proporciona evidencia de ficheros ejecutables que el sistema operativo ha evaluado.
Es importante entender una distincion critica: en la mayoria de versiones de Windows, la presencia de un ejecutable en ShimCache no demuestra que se ejecuto, solo que el sistema evaluo su compatibilidad. Sin embargo, en Windows XP y Server 2003, ShimCache si incluye un flag de ejecucion.
ShimCache registra la ruta completa del ejecutable, el timestamp de ultima modificacion del fichero ($SI Modified) y un flag que indica si el ejecutable fue ejecutado (solo en XP/2003) o simplemente evaluado.
Particularidad importante: ShimCache se escribe a disco solo cuando el sistema se apaga o reinicia de forma controlada. Los datos en memoria se pierden en un crash o un apagado forzoso. Por eso, en una respuesta a incidentes activa, es recomendable capturar la memoria RAM antes de apagar el sistema para obtener el ShimCache actualizado.
# Analizar ShimCache con AppCompatCacheParser (Eric Zimmerman)
AppCompatCacheParser.exe -f SYSTEM --csv output_shimcache -t
El orden de las entradas en ShimCache es cronologico inverso (las mas recientes primero), lo que ayuda a establecer una secuencia temporal de los ejecutables evaluados por el sistema.
SRUM: uso de recursos por aplicacion
SRUM (System Resource Usage Monitor) es una base de datos ESE (Extensible Storage Engine) introducida en Windows 8 que registra el uso de recursos del sistema por aplicacion y por usuario. Se encuentra en C:\Windows\System32\sru\SRUDB.dat.
SRUM es un artefacto forense excepcional porque proporciona datos cuantitativos que otros artefactos no tienen:
Bytes de red enviados y recibidos por aplicacion y por interfaz de red. Esto es critico para detectar exfiltracion de datos. Si un proceso desconocido envio 500 MB a traves de la interfaz de red WiFi entre las 02:00 y las 04:00, tienes evidencia cuantitativa de transferencia de datos sospechosa.
Tiempo de CPU consumido por aplicacion. Un cryptominer se delata por su consumo de CPU constante y elevado.
Energia consumida. Menos util para investigaciones tipicas, pero puede indicar actividad inusual en portatiles.
Tiempo de ejecucion en primer plano y en background. Un proceso que se ejecuta exclusivamente en background sin interaccion del usuario es sospechoso en un sistema de escritorio.
SRUM retiene datos durante 30 a 60 dias dependiendo de la configuracion, lo que le da una ventana de visibilidad mas amplia que muchos otros artefactos.
# Analizar SRUM con SrumECmd (Eric Zimmerman)
SrumECmd.exe -f "C:\Windows\System32\sru\SRUDB.dat" \
-r SOFTWARE --csv output_srum
# Necesitas la hive SOFTWARE para resolver SIDs a nombres de usuario
Para interpretar los datos de red de SRUM, correlaciona las interfaces de red con sus nombres usando la informacion de la hive SOFTWARE (Microsoft\WlanSvc\Interfaces para WiFi). Asi puedes determinar si la exfiltracion ocurrio por la red corporativa, por WiFi o por una interfaz VPN.
BAM y DAM: actividad de background
Background Activity Moderator (BAM) y Desktop Activity Moderator (DAM), introducidos en Windows 10 1709, registran la ruta completa de ejecutables con timestamp de ultima ejecucion. Se encuentran en la hive SYSTEM:
SYSTEM\CurrentControlSet\Services\bam\State\UserSettings{SID} SYSTEM\CurrentControlSet\Services\dam\State\UserSettings{SID}
BAM/DAM son especialmente utiles porque asocian la ejecucion de un programa con un usuario especifico (via SID), algo que Prefetch y ShimCache no hacen directamente.
La retencion de datos es limitada (generalmente los ultimos 7 dias), pero en esa ventana temporal proporcionan evidencia de ejecucion con timestamp y usuario asociado.
Event logs de Windows para DFIR
Aunque los event logs merecen un tratamiento extenso por separado, hay eventos especificos que todo analista DFIR debe conocer:
Para detectar ejecucion de programas: Event ID 4688 (creacion de proceso, requiere auditoria habilitada) en Security.evtx, con la linea de comandos si la politica de auditoria esta configurada para incluirla.
Para detectar persistencia: Event ID 7045 (instalacion de servicio) en System.evtx, Event ID 4698 (creacion de tarea programada) en Security.evtx.
Para detectar movimiento lateral: Event ID 4624 tipo 3 (logon de red), tipo 10 (RDP), Event ID 4648 (logon explicito), Event ID 4672 (asignacion de privilegios especiales).
Para detectar limpieza de huellas: Event ID 1102 (log de seguridad borrado) en Security.evtx, Event ID 104 (log de sistema borrado) en System.evtx.
Metodologia de analisis de artefactos Windows
Un enfoque sistematico para analizar artefactos Windows en una investigacion DFIR sigue estos pasos:
Primero, establece la linea base del sistema: version de Windows, timezone, cuentas de usuario, servicios instalados, programas instalados. Esta informacion viene de las hives SYSTEM, SOFTWARE y SAM.
Segundo, identifica programas ejecutados combinando Prefetch, AmCache, ShimCache, UserAssist, BAM/DAM y Event ID 4688. Ningun artefacto individual es completo, pero juntos proporcionan una imagen robusta.
Tercero, busca mecanismos de persistencia en las Run keys del registro, servicios, tareas programadas, WMI subscriptions y DLLs de inicio.
Cuarto, analiza la actividad de red con SRUM para identificar transferencias de datos inusuales y correlacionar con los logs de firewall y proxy.
Quinto, reconstruye la actividad del usuario con UserAssist, RecentDocs, ShellBags y TypedPaths para entender a que datos accedio el atacante usando las credenciales comprometidas.
Sexto, integra todo en la super timeline con plaso para obtener la narrativa cronologica completa del incidente.
Conclusion
Los artefactos forenses de Windows proporcionan un nivel de detalle que pocos sistemas operativos pueden igualar. La clave esta en conocer las fortalezas y limitaciones de cada artefacto, usar herramientas que los parseen correctamente (las de Eric Zimmerman son el estandar de facto) y correlacionar multiples fuentes para compensar los gaps individuales.
Ningun artefacto cuenta la historia completa por si solo. Prefetch demuestra ejecucion pero no asocia un usuario. BAM/DAM asocian un usuario pero tienen poca retencion. AmCache proporciona hashes pero puede no reflejar ejecucion en todas las versiones. ShimCache tiene la mayor cobertura temporal pero no confirma ejecucion en versiones post-XP. SRUM cuantifica la actividad de red pero no identifica los destinos.
La combinacion sistematica de todos ellos es lo que permite al analista construir un caso solido con evidencia verificable y reproducible.
Preguntas frecuentes
Libros recomendados
Artículos relacionados
Timeline Analysis: Como Reconstruir un Incidente Paso a Paso
Linux Forensics: Artefactos y Logs Esenciales para Investigaciones
Herramientas DFIR Open Source: Guia Completa 2026
Que es Memory Forensics y Por Que es Esencial en DFIR
Adquisicion de Memoria RAM: Herramientas y Mejores Practicas
Automatizacion de Memory Forensics: Scripts, Pipelines y YARA en Memoria
Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.