Análisis de Artefactos Shellbag de Windows
Descripción General
Los Shellbags son artefactos del registro de Windows que registran cómo los usuarios interactúan con las carpetas a través del Explorador de Windows, almacenando configuraciones de vista como el tamaño de los iconos, la posición de la ventana, el orden de clasificación y el modo de vista. Desde una perspectiva forense, los Shellbags proporcionan evidencia definitiva del acceso a carpetas, incluso a aquellas que ya no existen en el sistema. Cuando un usuario navega a una carpeta mediante el Explorador de Windows, el cuadro de diálogo Abrir/Guardar o el Panel de Control, se crea o actualiza una entrada Shellbag en el hive del registro del usuario. Estas entradas persisten después de eliminar la carpeta, desconectar la unidad e incluso tras restablecer el perfil de usuario, lo que las hace invaluables para demostrar que un usuario navegó a directorios específicos en discos locales, dispositivos USB, recursos compartidos de red o archivos zip.
Cuándo Usarlo
- Al investigar incidentes de seguridad que requieran analizar artefactos shellbag de Windows.
- Al construir reglas de detección o consultas de caza de amenazas para este dominio.
- Cuando los analistas del SOC necesiten procedimientos estructurados para este tipo de análisis.
- Al validar la cobertura de monitoreo de seguridad para técnicas de ataque relacionadas.
Prerrequisitos
- Familiaridad con conceptos y herramientas de informática forense.
- Acceso a un entorno de prueba o laboratorio para una ejecución segura.
- Python 3.8+ con las dependencias requeridas instaladas.
- Autorización adecuada para cualquier actividad de prueba.
Ubicaciones en el Registro
Windows 7/8/10/11
| Hive | Ruta de Clave | Almacena |
|---|---|---|
| NTUSER.DAT | Software\Microsoft\Windows\Shell\BagMRU | Árbol jerárquico de carpetas |
| NTUSER.DAT | Software\Microsoft\Windows\Shell\Bags | Configuración de vista por carpeta |
| UsrClass.dat | Local Settings\Software\Microsoft\Windows\Shell\BagMRU | Shell del escritorio/Explorador |
| UsrClass.dat | Local Settings\Software\Microsoft\Windows\Shell\Bags | Configuraciones de vista adicionales |
Estructura BagMRU
La clave BagMRU contiene un árbol jerárquico de subclaves numeradas que representan la estructura de directorios. Cada valor de subclave contiene un blob binario Shell Item (SHITEMID) que codifica la identidad de la carpeta:
- Raíz (BagMRU): Raíz del espacio de nombres del escritorio
- BagMRU\0: Normalmente "Mi PC"
- BagMRU\0\0: Primera unidad (ej. C:)
- BagMRU\0\0\0: Primera subcarpeta en C:
Cada Shell Item contiene:
- Tipo de elemento (carpeta, unidad, red, zip, panel de control)
- Nombre corto (formato 8.3)
- Nombre largo (Unicode)
- Marcas de tiempo de creación/modificación
- Entrada/secuencia MFT para carpetas NTFS
Análisis con EZ Tools
SBECmd (Línea de Comandos)
# Analizar shellbags desde un directorio de hives de registro
SBECmd.exe -d "C:\Evidence\Registry" --csv C:\Output --csvf shellbags.csv
# Analizar desde un sistema en vivo (requiere administrador)
SBECmd.exe --live --csv C:\Output --csvf live_shellbags.csv
# Columnas clave de salida:
# AbsolutePath - Ruta completa reconstruida
# CreatedOn - Cuándo se navegó a la carpeta por primera vez
# ModifiedOn - Cuándo se cambiaron las configuraciones de vista por última vez
# AccessedOn - Marca de tiempo del último acceso
# ShellType - Tipo de elemento shell (Directorio, Unidad, Red, etc.)
# Value - Datos brutos del elemento shell
ShellBags Explorer (GUI)
# Iniciar herramienta GUI para análisis interactivo
ShellBagsExplorer.exe
# Cargar hives de registro: File > Load Hive
# Navegar por la estructura de árbol para ver la jerarquía de carpetas
# Hacer clic derecho en las entradas para ver propiedades detalladas del elemento shell
Escenarios de Investigación Forense
Probar la Navegación en Dispositivos USB
Ruta Shellbag: Mi PC\E:\Confidencial\Archivos_Proyecto
Tipo Shell: Directorio (en volumen extraíble)
Creado el: 2025-03-15 09:30:00 UTC
Esto demuestra que el usuario navegó a E:\Confidencial\Archivos_Proyecto
a través del Explorador de Windows, incluso si la unidad USB ya no está conectada.
La letra de unidad E: y las marcas de tiempo del directorio se pueden correlacionar
con las entradas del registro USBSTOR y MountPoints2.
Detectar Acceso a Recursos Compartidos de Red
Ruta Shellbag: \\ServidorArchivos01\Finanzas\Informes_Q4
Tipo Shell: Ubicación de Red
Último Acceso: 2025-02-20 14:15:00 UTC
Esto demuestra que el usuario navegó a un recurso compartido de red, incluso si
el recurso ha sido dado de baja o se ha revocado el acceso.
Identificar Conocimiento de Carpetas Eliminadas
Ruta Shellbag: C:\Usuarios\sospechoso\Documentos\Area_Preparacion_Exfiltracion
Tipo Shell: Directorio
Creado el: 2025-01-10 08:00:00 UTC
Aunque C:\Usuarios\sospechoso\Documentos\Area_Preparacion_Exfiltracion
ya no existe, la entrada Shellbag demuestra que el usuario
creó y navegó a esta carpeta.
Limitaciones
- Los Shellbags solo registran interacciones a nivel de carpeta, no el acceso a archivos individuales.
- Solo se crean a través del shell del Explorador de Windows y los cuadros de diálogo Abrir/Guardar.
- El acceso desde la línea de comandos (cmd, PowerShell) no genera entradas Shellbag.
- El acceso programático a archivos mediante API no genera entradas Shellbag.
- Las marcas de tiempo pueden reflejar cambios en la configuración de vista, no necesariamente acceso a la carpeta.
- Windows puede actualizar por lotes las entradas Shellbag durante el cierre del Explorador.
Referencias
- Shellbags Forensic Analysis 2025: https://www.cybertriage.com/blog/shellbags-forensic-analysis-2025/
- SANS Shellbag Forensics: https://www.sans.org/blog/computer-forensic-artifacts-windows-7-shellbags
- Magnet Forensics Shellbag Analysis: https://www.magnetforensics.com/blog/forensic-analysis-of-windows-shellbags/
- ShellBags Explorer: https://ericzimmerman.github.io/
Ejemplo de Salida
$ SBECmd.exe -d "C:\Evidence\Users\jsmith" --csv /analysis/shellbag_output
SBECmd v2.1.0 - ShellBags Explorer (Línea de Comandos)
=======================================================
Procesando hives para el usuario: jsmith
NTUSER.DAT: C:\Evidence\Users\jsmith\NTUSER.DAT
UsrClass.dat: C:\Evidence\Users\jsmith\AppData\Local\Microsoft\Windows\UsrClass.dat
[+] Entradas shellbag en NTUSER.DAT: 456
[+] Entradas shellbag en UsrClass.dat: 1,234
[+] Total de entradas shellbag: 1,690
--- Línea de Tiempo de Acceso a Carpetas (Ventana de Incidente) ---
Último Acceso (UTC) | Ruta de Carpeta | Tipo | Recuento Accesos
-------------------------|---------------------------------------------------------|-------------|-----------------
2024-01-15 14:34:05 | C:\Users\jsmith\Downloads | Sistema Archivos | 45
2024-01-15 14:36:25 | C:\ProgramData\Updates | Sistema Archivos | 3
2024-01-15 15:05:00 | \\FILESERV01\Finanzas | Red | 2
2024-01-15 15:12:30 | \\FILESERV01\Finanzas\Informes_Q4 | Red | 1
2024-01-15 15:30:00 | E:\ | Extraíble | 4
2024-01-15 15:30:45 | E:\Backup | Extraíble | 3
2024-01-15 15:31:20 | E:\Backup\Datos_Corporativos | Extraíble | 2
2024-01-15 16:12:45 | \\FILESERV01\RRHH\Empleados | Red | 1
2024-01-15 16:15:00 | \\FILESERV01\RRHH\Empleados\Registros_2024 | Red | 1
2024-01-16 02:35:00 | C:\Windows\Temp | Sistema Archivos | 5
2024-01-17 02:44:00 | C:\ProgramData\svc | Sistema Archivos | 2
2024-01-18 01:10:00 | C:\Users\jsmith\AppData\Local\Temp | Sistema Archivos | 8
--- Acceso a Recursos Compartidos de Red ---
\\FILESERV01\Finanzas Primero: 2023-09-10 Último: 2024-01-15
\\FILESERV01\Finanzas\Informes_Q4 Primero: 2024-01-15 Último: 2024-01-15 (NUEVO)
\\FILESERV01\RRHH\Empleados Primero: 2024-01-15 Último: 2024-01-15 (NUEVO)
\\DC01\SYSVOL Primero: 2023-03-15 Último: 2024-01-16 (hora de acceso anómala)
--- Acceso a Dispositivos Extraíbles ---
E:\ (Unidad USB)
Nombre del Volumen: BACKUP_DRIVE
Primer Acceso: 2024-01-15 15:30:00 UTC
Último Acceso: 2024-01-15 15:45:22 UTC
Carpetas Navegadas: 3 (E:\\, E:\Backup, E:\Backup\Datos_Corporativos)
--- Rutas Eliminadas / Ya Inexistentes ---
C:\ProgramData\Updates\ (carpeta eliminada, shellbag persiste)
C:\ProgramData\svc\ (carpeta eliminada, shellbag persiste)
C:\Windows\Temp\tools\ (carpeta eliminada, shellbag persiste)
Resumen:
Total de carpetas únicas accedidas: 1,690
Recursos compartidos de red accedidos: 4 (2 nuevos durante el incidente)
Medios extraíbles: 1 dispositivo USB (se sospecha preparación de datos)
Evidencia de carpetas eliminadas: 3 rutas (indicador de anti-forense)
CSV exportado a: /analysis/shellbag_output/