Analisando Artefatos Windows Shellbag
Visão Geral
Shellbags são artefatos de registro do Windows que rastreiam como os usuários interagem com pastas através do Windows Explorer, armazenando configurações de exibição como tamanho do ícone, posição da janela, ordem de classificação e modo de exibição. De uma perspectiva forense, Shellbags fornecem evidências definitivas de acesso a pastas — até mesmo pastas que não existem mais no sistema. Quando um usuário navega para uma pasta via Windows Explorer, diálogo Abrir/Salvar ou Painel de Controle, uma entrada Shellbag é criada ou atualizada no hive de registro do usuário. Essas entradas persistem após a exclusão da pasta, desconexão da unidade e até mesmo após redefinições do perfil do usuário, tornando-as inestimáveis para provar que um usuário navegou para diretórios específicos em unidades locais, dispositivos USB, compartilhamentos de rede ou arquivos zip.
Quando Usar
- Ao investigar incidentes de segurança que exigem análise de artefatos shellbag do Windows
- Ao construir regras de detecção ou consultas de caça a ameaças para este domínio
- Quando analistas de SOC precisam de procedimentos estruturados para este tipo de análise
- Ao validar a cobertura de monitoramento de segurança para técnicas de ataque relacionadas
Pré-requisitos
- Familiaridade com conceitos e ferramentas de perícia digital
- Acesso a um ambiente de teste ou laboratório para execução segura
- Python 3.8+ com as dependências necessárias instaladas
- Autorização apropriada para quaisquer atividades de teste
Localizações do Registro
Windows 7/8/10/11
| Hive | Caminho da Chave | Armazena |
|---|---|---|
| NTUSER.DAT | Software\Microsoft\Windows\Shell\BagMRU | Árvore hierárquica de pastas |
| NTUSER.DAT | Software\Microsoft\Windows\Shell\Bags | Configurações de exibição por pasta |
| UsrClass.dat | Local Settings\Software\Microsoft\Windows\Shell\BagMRU | Shell da Área de Trabalho/Explorer |
| UsrClass.dat | Local Settings\Software\Microsoft\Windows\Shell\Bags | Configurações de exibição adicionais |
Estrutura BagMRU
A chave BagMRU contém uma árvore hierárquica de subchaves numeradas representando a estrutura de diretórios. Cada valor de subchave contém um blob binário Shell Item (SHITEMID) que codifica a identidade da pasta:
- Raiz (BagMRU): Raiz do namespace da Área de Trabalho
- BagMRU\0: Tipicamente "Meu Computador"
- BagMRU\0\0: Primeira unidade (ex.: C:)
- BagMRU\0\0\0: Primeira subpasta em C:
Cada Shell Item contém:
- Tipo de item (pasta, unidade, rede, zip, painel de controle)
- Nome curto (formato 8.3)
- Nome longo (Unicode)
- Carimbos de data/hora de criação/modificação
- Entrada/sequência MFT para pastas NTFS
Análise com EZ Tools
SBECmd (Linha de Comando)
# Analisar shellbags de um diretório de hives de registro
SBECmd.exe -d "C:\Evidências\Registry" --csv C:\Output --csvf shellbags.csv
# Analisar de um sistema ativo (requer administrador)
SBECmd.exe --live --csv C:\Output --csvf live_shellbags.csv
# Principais colunas de saída:
# AbsolutePath - Caminho completo reconstruído
# CreatedOn - Quando a pasta foi navegada pela primeira vez
# ModifiedOn - Quando as configurações de exibição foram alteradas pela última vez
# AccessedOn - Último carimbo de data/hora de acesso
# ShellType - Tipo de item shell (Directory, Drive, Network, etc.)
# Value - Dados brutos do item shell
ShellBags Explorer (GUI)
# Iniciar ferramenta GUI para análise interativa
ShellBagsExplorer.exe
# Carregar hives de registro: File > Load Hive
# Navegar pela estrutura de árvore para ver a hierarquia de pastas
# Clicar com o botão direito em entradas para propriedades detalhadas do item shell
Cenários de Investigação Forense
Comprovando Navegação em Dispositivo USB
Caminho Shellbag: Meu Computador\E:\Confidencial\Arquivos_Projeto
ShellType: Directory (em volume removível)
CreatedOn: 2025-03-15 09:30:00 UTC
Isso prova que o usuário navegou para E:\Confidencial\Arquivos_Projeto
via Windows Explorer, mesmo que a unidade USB não esteja mais conectada.
A letra da unidade E: e os carimbos de data/hora do diretório podem ser
correlacionados com entradas de registro USBSTOR e MountPoints2.
Detectando Acesso a Compartilhamento de Rede
Caminho Shellbag: \\FileServer01\Financeiro\Relatorios_Q4
ShellType: Network Location
AccessedOn: 2025-02-20 14:15:00 UTC
Isso prova que o usuário navegou para um compartilhamento de rede, mesmo que
o compartilhamento tenha sido descomissionado ou o acesso revogado.
Identificando Conhecimento de Pasta Excluída
Caminho Shellbag: C:\Usuários\suspeito\Documentos\Staging_Exfiltração
ShellType: Directory
CreatedOn: 2025-01-10 08:00:00 UTC
Mesmo que C:\Usuários\suspeito\Documentos\Staging_Exfiltração
não exista mais, a entrada Shellbag prova que o usuário
criou e navegou para esta pasta.
Limitações
- Shellbags apenas registram interações no nível de pasta, não acesso a arquivos individuais
- São criados apenas através do shell do Windows Explorer e diálogos Abrir/Salvar
- Acesso por linha de comando (cmd, PowerShell) não gera entradas Shellbag
- Acesso programático a arquivos via APIs não gera entradas Shellbag
- Carimbos de data/hora podem refletir alterações nas configurações de exibição, não necessariamente acesso à pasta
- O Windows pode atualizar entradas Shellbag em lote durante o desligamento do Explorer
Referências
- Análise Forense de Shellbags 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/
Exemplo de Saída
$ SBECmd.exe -d "C:\Evidências\Users\jsmith" --csv /analysis/shellbag_output
SBECmd v2.1.0 - ShellBags Explorer (Command Line)
====================================================
Processando hives do usuário: jsmith
NTUSER.DAT: C:\Evidências\Users\jsmith\NTUSER.DAT
UsrClass.dat: C:\Evidências\Users\jsmith\AppData\Local\Microsoft\Windows\UsrClass.dat
[+] Entradas shellbag em NTUSER.DAT: 456
[+] Entradas shellbag em UsrClass.dat: 1.234
[+] Total de entradas shellbag: 1.690
--- Linha do Tempo de Acesso a Pastas (Janela do Incidente) ---
Último Acesso (UTC) | Caminho da Pasta | Tipo | Contagem de Acesso
------------------------|---------------------------------------------------------|-------------|-------------------
2024-01-15 14:34:05 | C:\Users\jsmith\Downloads | File System | 45
2024-01-15 14:36:25 | C:\ProgramData\Updates | File System | 3
2024-01-15 15:05:00 | \\FILESERV01\Financeiro | Network | 2
2024-01-15 15:12:30 | \\FILESERV01\Financeiro\Relatorios_Q4 | Network | 1
2024-01-15 15:30:00 | E:\ | Removable | 4
2024-01-15 15:30:45 | E:\Backup | Removable | 3
2024-01-15 15:31:20 | E:\Backup\Dados_Corporativos | Removable | 2
2024-01-15 16:12:45 | \\FILESERV01\RH\Funcionários | Network | 1
2024-01-15 16:15:00 | \\FILESERV01\RH\Funcionários\Registros_2024 | Network | 1
2024-01-16 02:35:00 | C:\Windows\Temp | File System | 5
2024-01-17 02:44:00 | C:\ProgramData\svc | File System | 2
2024-01-18 01:10:00 | C:\Users\jsmith\AppData\Local\Temp | File System | 8
--- Acesso a Compartilhamentos de Rede ---
\\FILESERV01\Financeiro Primeiro: 2023-09-10 Último: 2024-01-15
\\FILESERV01\Financeiro\Relatorios_Q4 Primeiro: 2024-01-15 Último: 2024-01-15 (NOVO)
\\FILESERV01\RH\Funcionários Primeiro: 2024-01-15 Último: 2024-01-15 (NOVO)
\\DC01\SYSVOL Primeiro: 2023-03-15 Último: 2024-01-16 (horário de acesso anômalo)
--- Acesso a Dispositivo Removível ---
E:\ (Unidade USB)
Nome do Volume: BACKUP_DRIVE
Primeiro Acesso: 2024-01-15 15:30:00 UTC
Último Acesso: 2024-01-15 15:45:22 UTC
Pastas Navegadas: 3 (E:,\ E:\Backup,\ E:\Backup\Dados_Corporativos)
--- Caminhos Excluídos/Inexistentes ---
C:\ProgramData\Updates\ (pasta excluída, shellbag persiste)
C:\ProgramData\svc\ (pasta excluída, shellbag persiste)
C:\Windows\Temp\tools\ (pasta excluída, shellbag persiste)
Resumo:
Total de pastas únicas acessadas: 1.690
Compartilhamentos de rede acessados: 4 (2 acessados durante o incidente)
Mídia removível: 1 dispositivo USB (suspeita de preparação de dados)
Evidências de pastas excluídas: 3 caminhos (indicador de antiforensia)
CSV exportado para: /analysis/shellbag_output/