# T1037.003 - Script de Logon de Rede ## Técnica Pai Esta é uma sub-técnica de [[Logon]]. Scripts de logon de rede são executados automaticamente quando um usuário autentica-se em um domínio Windows. Adversários que comprometem o ambiente Active Directory podem abusar dessa funcionalidade para distribuir e executar código malicioso em escala para múltiplos hosts, estabelecendo persistência lateral ampla com um único ponto de controle. ## Descrição Em ambientes Windows com Active Directory, administradores podem associar scripts de logon a contas de usuário ou a Objetos de Política de Grupo (GPOs). Quando o usuário autentica-se no domínio, o script é automaticamente baixado do servidor (tipicamente do compartilhamento `NETLOGON` de um Domain Controller) e executado com os privilégios desse usuário. Essa é uma funcionalidade legítima e amplamente utilizada para mapear unidades de rede, configurar impressoras e aplicar políticas corporativas. Adversários que obtêm controle sobre o Active Directory - sejá por comprometimento de uma conta de administrador de domínio, exploração de vulnerabilidade em AD DS ou acesso a um Domain Controller - podem modificar scripts de logon existentes ou criar novos, associando-os via GPO a grupos de usuários ou a toda a organização. Dependendo da amplitude do GPO configurado, um único script malicioso pode ser executado simultaneamente em dezenas, centenas ou milhares de endpoints no momento do próximo logon dos usuários. A técnica é particularmente poderosa porque: (1) os scripts de logon são considerados "confiáveis" pelo sistema operacional; (2) a execução ocorre em contexto de usuário, dificultando a detecção por regras focadas em processos SYSTEM; (3) o script reside no servidor, não nos clientes, dificultando a remoção por varreduras de endpoint. **Contexto Brasil/LATAM:** Ambientes corporativos no Brasil, especialmente em setores como [[_sectors|financeiro]], [[_sectors|saúde]] e [[_sectors|governo]], frequentemente operam Active Directories com centenas ou milhares de usuários e GPOs pouco auditadas. Grupos de ransomware como [[lockbit|LockBit]] e [[s1070-black-basta-ransomware|Black Basta]], que possuem histórico de ataques a empresas brasileiras, exploram rotineiramente o comprometimento de AD para distribuição lateral de payloads via mecanismos de logon e GPO, maximizando o impacto de cada intrusão. ## Attack Flow ```mermaid graph TB A[Comprometimento Inicial<br/>Phishing / Exploit] --> B[Escalada de Privilégio<br/>Acesso a conta AD privilegiada] B --> C[Acesso ao Active Directory<br/>Domínio / Domain Controller] C --> D[T1037.003 - MODIFICAÇÃO DE SCRIPT DE LOGON<br/>Edição via GPO ou conta de usuário] D --> E[Distribuição em Escala<br/>Script executado em todos os hosts no próximo logon] E --> F[Execução de Payload<br/>Ransomware / Backdoor / Minerador] F --> G[Persistência Lateral<br/>Reinfecção automática a cada logon] ``` ## Como Funciona 1. **Preparação** - O adversário obtém privilégios suficientes no Active Directory para modificar GPOs ou atributos de usuário. A conta `SYSVOL` ou o compartilhamento `NETLOGON` no Domain Controller é o alvo. O adversário identifica scripts de logon existentes (`\\DOMAIN\NETLOGON\*.bat`, `*.vbs`, `*.ps1`) para modificação, ou cria um novo e o associa a uma GPO existente. 2. **Execução** - O script malicioso é escrito no compartilhamento `NETLOGON` do Domain Controller. Via console de administração do AD (`dsa.msc`) ou PowerShell, o adversário associa o script ao atributo `scriptPath` de contas de usuário alvo, ou o adiciona a uma GPO existente com amplo escopo. No próximo logon de qualquer usuário coberto pela política, o script é executado automaticamente. 3. **Pós-execução** - O payload pode variar: download de malware adicional, criação de backdoor, exfiltração de credenciais, ou execução direta de ransomware. A persistência é mantida enquanto o script permanecer no NETLOGON e a GPO estiver ativa. Mesmo após remediação parcial dos endpoints, o script continua sendo distribuído a cada novo logon. **Exemplo - atributo de script de logon via PowerShell (diagnóstico legítimo de AD):** ```powershell # Verificar scripts de logon atribuídos a usuários (auditoria legítima) Get-ADUser -Filter * -Properties ScriptPath | Where-Object { $_.ScriptPath -ne $null } | Select-Object Name, SamAccountName, ScriptPath | Export-Csv -Path "C:\Audit\logon-scripts.csv" -NoTypeInformation ``` ## Detecção **Fontes de dados:** Logs de auditoria do Active Directory (Event ID 5136 - modificação de objeto AD); Monitoramento de alterações em `SYSVOL\NETLOGON`; Logs de processo (execução de scripts `.bat`, `.vbs`, `.ps1` no contexto de logon); SIEM correlacionando criação de processo com evento de logon de usuário. ```yaml title: Modificação de Script de Logon de Rede via Active Directory id: b84e21c3-7d5f-4a8b-c923-1f3d8e2b5a67 status: experimental logsource: category: process_creation product: windows detection: selection_logon_script_write: EventID: 5136 ObjectClass: 'user' AttributeLDAPDisplayName: 'scriptPath' selection_process_at_logon: EventID: 4688 NewProcessName|endswith: - '\cmd.exe' - '\powershell.exe' - '\wscript.exe' - '\cscript.exe' SubjectLogonId|contains: '0x' ParentProcessName|endswith: - '\userinit.exe' condition: selection_logon_script_write or selection_process_at_logon falsepositives: - Administradores de domínio realizando alterações legítimas de GPO - Scripts de logon corporativos para mapeamento de drives e impressoras - Ferramentas de gerenciamento de endpoint que modificam políticas de logon level: high tags: - attack.persistence - attack.lateral-movement - attack.t1037.003 ``` ## Mitigação | Mitigação | Recomendação Prática | |-----------|---------------------| | [[m1022-restrict-file-and-directory-permissions\|M1022 - Restrict File and Directory Permissions]] | Restringir permissões de escrita no compartilhamento `NETLOGON` e `SYSVOL` para apenas contas de administrador de domínio explicitamente autorizadas; auditar regularmente quem possui permissão de escrita nessas pastas | | Auditoria de GPO | Habilitar auditoria detalhada de modificações em GPOs (Event ID 5136); configurar alertas no SIEM para qualquer alteração em GPOs que afetem mais de 100 usuários | | Princípio do menor privilégio | Limitar o número de contas com permissão de administrador de domínio; utilizar contas separadas para administração de AD versus uso cotidiano | | Monitoramento de SYSVOL | Implementar monitoramento de integridade de arquivos (FIM) no compartilhamento NETLOGON; qualquer novo arquivo ou alteração em arquivo existente deve gerar alerta | ## Referências - [[Logon]] - técnica pai com todas as sub-técnicas de scripts de inicialização - [[t1078-valid-accounts|T1078 - Valid Accounts]] - frequentemente usado em conjunto para obter o acesso inicial ao AD - [[t1484-domain-or-tenant-policy-modification|T1484 - Modificação de Política de Domínio]] - técnica relacionada que também abusa de GPOs - [[m1022-restrict-file-and-directory-permissions|M1022 - Restrict File and Directory Permissions]] - controle de mitigação principal *Fonte: [MITRE ATT&CK - T1037.003](https://attack.mitre.org/techniques/T1037/003)*