# DS0005 — WMI ## Descrição O Windows Management Instrumentation (WMI) é a infraestrutura de gestão de dados e operações do Windows que permite tanto o gerenciamento local quanto remoto de sistemas. Construído sobre o padrão DMTF CIM (Common Information Model), o WMI fornece uma interface unificada para acessar e manipular práticamente qualquer aspecto do sistema operacional — desde processos e serviços até configurações de hardware, rede e registro. Do ponto de vista ofensivo, o WMI é uma das ferramentas mais poderosas à disposição de adversários avançados: permite execução remota de código sem criar arquivos em disco, persistência via assinaturas de eventos (Event Subscriptions) que sobrevivem a reinicializações, e reconhecimento do ambiente sem acionar ferramentas de segurança que monitoram binários suspeitos. Grupos como APT29, Fin7 e operadores de ransomware moderno utilizam WMI extensivamente em suas TTPs. A dificuldade de monitorar WMI reside em sua natureza intrínseca ao sistema: bloquear o WMI quebra funcionalidades legítimas de gestão e monitoramento. A estratégia eficaz é identificar o que é normal (WMI para inventário, deployment, monitoramento) e alertar sobre anomalias — como assinaturas de eventos criadas por usuários não administrativos, ou execução de processos via WMI de origens inesperadas. ## Visão Geral **Sysmon — Configuração recomendada para WMI:** ```xml <!-- sysmon-config.xml — capturar todos os eventos WMI --> <WmiEvent onmatch="include"> <Operation condition="is">Created</Operation> </WmiEvent> ``` **Auditoria de objetos WMI via PowerShell:** ```powershell # Listar assinaturas de eventos WMI permanentes — baseline e detecção Get-WMIObject -Namespace root\subscription -Class __EventFilter Get-WMIObject -Namespace root\subscription -Class __EventConsumer Get-WMIObject -Namespace root\subscription -Class __FilterToConsumerBinding # Se retornar resultados inesperados, investigar imediatamente ``` **Auditoria de objetos WMI (alternativa PowerShell moderno):** ```powershell Get-CimInstance -Namespace root\subscription -ClassName __EventFilter | Select-Object Name, Query, QueryLanguage, CreationClassName ``` ### Análise Forense de WMI **Repositório WMI (persistência em disco):** - Localização: `C:\Windows\System32\wbem\Repository\` - Arquivos: `OBJECTS.DATA`, `INDEX.BTR`, `MAPPING*.MAP` - Ferramentas de análise: **WMI Explorer**, **python-cim** (Mandiant), **PyWMIPersistenceFinder** ### SIEM — Integração | SIEM | Fonte de Dados | Query de Interesse | |---|---|---| | **Microsoft Sentinel** | Sysmon via Azure Monitor Agent + `SecurityEvent` | `Event | where Source == "Microsoft-Windows-Sysmon" | where EventID in (19, 20, 21)` | | **Splunk** | Sysmon Add-on + WinEventLog WMI-Activity | `index=wineventlog EventCode=5861` | | **Elastic** | Winlogbeat + Elastic Security detection rules | Regra nativa: "WMI Event Subscription" | | **CrowdStrike Falcon** | Sensor telemetry nativa — captura WMI sem configuração adicional | Cobertura mais completa para WMI remoto | ## Pipeline de Coleta ```mermaid graph TB A["⚙️ WMI Engine<br/>root\\subscription namespace"] --> B["📋 WMI-Activity/Operational<br/>EID 5859·5861 (desabilitado!)"] A --> C["🔍 Sysmon EID 19·20·21<br/>WmiEventFilter/Consumer"] B --> D["📡 WEF / Agente SIEM<br/>Coleta centralizada"] C --> D D --> E["🗄️ SIEM<br/>Sentinel · Splunk · Elastic"] E --> F["🚨 Alerta CRÍTICO<br/>Event Subscription criada<br/>por usuário não-admin"] ``` ## Componentes de Dados | Componente | ID | Descrição | |---|---|---| | WMI Creation | [[dc0008-wmi-creation\|DC0008]] | Criação de objetos WMI — especialmente assinaturas de eventos permanentes | ## Como Coletar ### Windows — Auditoria Nativa e Sysmon **WMI Trace Logging (habilitação manual necessária):** ```powershell # Habilitar log de atividade WMI logman start WMI-Trace -p "Microsoft-Windows-WMI-Activity" 0xFFFFFFFF -ets # Via Event Log nativo (recomendado — persistente) wevtutil sl Microsoft-Windows-WMI-Activity/Operational /e:true ``` **Event IDs WMI:** | Event ID | Log | Descrição | Prioridade | |---|---|---|---| | 5857 | WMI-Activity/Operational | Execução de operação WMI — provider ID e namespace | Alta | | 5858 | WMI-Activity/Operational | Falha de operação WMI — pode indicar reconhecimento | Média | | 5859 | WMI-Activity/Operational | Nova assinatura de evento WMI registrada | Crítica | | 5860 | WMI-Activity/Operational | Assinatura de evento temporária registrada | Alta | | 5861 | WMI-Activity/Operational | Assinatura de evento permanente ativada | Crítica | | 19 | Microsoft-Windows-Sysmon | WmiEvent FilterToConsumerBinding detectado | Crítica | | 20 | Microsoft-Windows-Sysmon | WmiEventConsumer detectado | Crítica | | 21 | Microsoft-Windows-Sysmon | WmiEventFilter activity detectado | Crítica | > [!danger] Alerta Imediato > Event IDs 5859, 5861 (WMI Activity) e Sysmon 19, 20, 21 (WmiEvent*) indicam criação de persistência via WMI Event Subscription — devem gerar alertas de alta prioridade imediatamente. ## Técnicas Detectadas | Técnica | Descrição | |---|---| | [[t1047-windows-management-instrumentation\|T1047 — Windows Management Instrumentation]] | Execução de comandos e scripts via WMI — local e remoto | | [[ttp/techniques/persistence/t1546-003-windows-management-instrumentation-event-subscription\|T1546.003 — WMI Event Subscription]] | Persistência via filtros e consumidores de eventos WMI permanentes | | [[t1021-006-windows-remote-management\|T1021.006 — Windows Remote Management]] | Movimento lateral combinado com WMI para execução remota | | [[t1082-system-information-discovery\|T1082 — System Information Discovery]] | WMI é amplamente usado para reconhecimento do sistema (OS, hardware, software) | | [[t1016-system-network-configuration-discovery\|T1016 — System Network Configuration Discovery]] | Enumeração de configurações de rede via classes WMI | ## Gaps de Cobertura Brasil/LATAM **Lacunas mais comuns em organizações brasileiras:** > [!warning] Gap Crítico — WMI Activity Log Desabilitado > O log `Microsoft-Windows-WMI-Activity/Operational` está **desabilitado por padrão** no Windows. Sem ele, assinaturas de eventos WMI (o método de persistência mais sofisticado disponível no Windows) são completamente invisíveis. Este gap afeta virtualmente 100% das organizações que não tiveram uma implementação de SIEM cuidadosa. **Principais gaps identificados:** 1. **Ausência de Sysmon com configuração WMI:** Sysmon com eventos WMI (19, 20, 21) é a forma mais prática de detectar WMI Event Subscriptions. No Brasil, o Sysmon ainda tem adoção limitada fora de grandes bancos e empresas com SOC maduro. 2. **WMI remoto não monitorado:** O WMI sobre DCOM (porta 135 + portas dinâmicas RPC) é usado para movimento lateral, mas raramente monitorado em firewalls internos de organizações brasileiras. Adversários usam `wmic /node:` para executar comandos em hosts remotos sem deixar rastros nos hosts de destino se o WMI Activity Log estiver desabilitado. 3. **Repositório WMI como evidência forense ignorada:** Em resposta a incidentes no Brasil, o repositório WMI (`C:\Windows\System32\wbem\Repository\`) raramente é coletado como evidência forense, perdendo artefatos críticos de persistência. 4. **Cobertura de WMI em servidores:** O foco de monitoramento WMI costuma ser em endpoints, deixando servidores — onde o impacto de persistência é maior — com cobertura reduzida. 5. **Recomendações para contexto LATAM:** - Habilitar `Microsoft-Windows-WMI-Activity/Operational` via GPO como passo imediato - Implantar Sysmon com templaté de configuração incluindo regras WMI (SwiftOnSecurity ou Olaf Hartong) - Criar detecção de linha de base: qualquer processo filho de `WmiPrvSE.exe` que não sejá parte de software de gestão conhecido - Bloquear WMI remoto na rede interna para workstations que não necessitam de gestão remota via WMI ## Referências - [[_command\|Data Components — Command]] — inclui [[dc0008-wmi-creation\|DC0008 — WMI Creation]] - [[m1047-audit\|M1047 — Audit]] — auditoria de assinaturas WMI existentes como controle de detecção - [[m1026-privileged-account-management\|M1026 — Privileged Account Management]] — restringir quem pode criar objetos WMI - [[t1047-windows-management-instrumentation\|T1047 — Windows Management Instrumentation]] — técnica primária coberta - [[ttp/techniques/persistence/t1546-003-windows-management-instrumentation-event-subscription\|T1546.003 — WMI Event Subscription]] — persistência via WMI - [[m1042-disable-or-remove-feature-or-program\|M1042 — Disable or Remove Feature or Program]] — desabilitar WMI remoto onde não necessário --- *Fonte: [MITRE ATT&CK — DS0005](https://attack.mitre.org/datasources/DS0005)*