# T1037.001 - Logon Script (Windows)
## Técnica Pai
Esta é uma sub-técnica de [[t1037-boot-or-logon-initialization-scripts|T1037 - Boot or Logon Initialization Scripts]]. A técnica pai abrange todos os mecanismos de scripts executados durante o processo de inicialização ou logon do sistema operacional. A variante Windows (T1037.001) explora específicamente a chave de Registro `UserInitMprLogonScript` para execução persistente no contexto do usuário.
## Descrição
Adversários podem utilizar scripts de logon do Windows para garantir a execução automática de código malicioso sempre que um usuário autenticar no sistema. O mecanismo de logon scripts é uma funcionalidade legítima do Windows que permite executar tarefas de inicialização - configurar drives de rede, atualizar políticas, mapear recursos - no momento em que uma sessão de usuário é estabelecida.
A chave de Registro central desta técnica é `HKCU\Environment\UserInitMprLogonScript`. Ao inserir nessa chave o caminho de um script ou executável malicioso, o adversário garante que o código será executado automaticamente a cada logon do usuário afetado, sem interação humana. O processo responsável pela inicialização de sessão (`userinit.exe`) lê e processa esse valor antes de carregar o shell do usuário.
O diferencial desta abordagem em relação a outros mecanismos de persistência é o fato de operar inteiramente no escopo do usuário (`HKCU`), sem exigir privilégios administrativos. Qualquer processo com acesso de escrita ao registro do usuário corrente pode inserir ou modificar esse valor - incluindo malware em fase de pós-exploração que ainda não escalou privilégios. Isso torna a técnica especialmente relevante em ambientes corporativos onde usuários comuns têm perfis roaming ou políticas de logon configuradas via GPO.
Além da chave `HKCU`, adversários com privilégios de domínio podem abusar do campo `scriptPath` em objetos de usuário do Active Directory, configurando logon scripts centralizados que afetam múltiplos usuários. Esse vetor é mais raro, mas pode impactar um volume significativo de máquinas em uma única operação.
Grupos de espionagem como o [[g0007-apt28|APT28]] (Fancy Bear), vinculado ao GRU russo, e grupos criminosos como o [[g0080-cobalt-group|Cobalt Group]] exploram este mecanismo em campanhas prolongadas, garantindo re-execução de implantes mesmo após reinicializações sem precisar escalar privilégios.
## Como Funciona
O mecanismo opera em três etapas sequenciais durante o processo de logon do Windows:
1. **Escrita no Registro:** O adversário - geralmente após comprometimento inicial via phishing ou exploração de vulnerabilidade - executa um comando equivalente a `reg add "HKCU\Environment" /v UserInitMprLogonScript /t REG_SZ /d "C:\Users\Public\payload.bat"`. O arquivo referênciado pode ser um script `.bat`, `.vbs`, `.ps1`, ou um executável `.exe`.
2. **Processamento pelo userinit.exe:** Toda vez que o usuário faz logon, o Windows executa `userinit.exe` como parte do processo de inicialização de sessão. Esse processo lê o valor `UserInitMprLogonScript` e executa o arquivo específicado antes de inicializar o `explorer.exe` (shell do usuário).
3. **Execução do payload:** O script ou executável malicioso corre no contexto do usuário autenticado, com todas as suas credenciais e permissões. Payloads típicos incluem: beacons de C2 (Cobalt Strike, Sliver), downloaders de segunda fase, ou scripts de coleta de credenciais.
A persistência é silenciosa: o logon script não exibe jánelas por padrão, e o usuário não recebe nenhuma notificação visual de que código adicional está sendo executado durante sua autenticação.
**Comparação com mecanismos similares:**
| Mecanismo | Chave / Local | Requer Admin? | Escopo |
|-----------|--------------|---------------|--------|
| `UserInitMprLogonScript` | `HKCU\Environment` | Não | Usuário individual |
| Group Policy Logon Script | GPO - User Config | Sim (Domain Admin) | GPO aplicada |
| Scheduled Task no Logon | Task Scheduler | Depende | Flexível |
| Run Key | `HKCU\Software\Microsoft\Windows\CurrentVersion\Run` | Não | Usuário individual |
## Attack Flow
```mermaid
graph TB
A[Adversário com acesso inicial] --> B[Escreve valor em<br/>HKCU\\Environment\\<br/>UserInitMprLogonScript]
B --> C[Usuário faz logon<br/>no Windows]
C --> D[userinit.exe processa<br/>chave de Registro]
D --> E[Script malicioso<br/>executado automaticamente]
E --> F{Objetivo do payload}
F --> G[Beacon C2<br/>Cobalt Strike / Sliver]
F --> H[Coleta de credenciais<br/>Mimikatz / LSASS dump]
F --> I[Download de<br/>segunda fase]
G --> J[Persistência garantida<br/>a cada nova sessão]
H --> J
I --> J
```
## Exemplos de Uso
### APT28 (Fancy Bear) - Espionagem Governamental
O [[g0007-apt28|APT28]], grupo de ameaça persistente avançada atribuído ao GRU (inteligência militar russa), utiliza logon scripts como mecanismo de persistência em campanhas direcionadas a organismos governamentais e entidades da OTAN. Os implantes [[s0438-attor|Attor]] e [[s0251-zebrocy|Zebrocy]] - ambos pertencentes ao ecossistema do APT28 - implementam `UserInitMprLogonScript` para garantir re-execução após reinicializações, mesmo sem privilégios administrativos.
O implante [[s0044-jhuhugit|JHUHUGIT]] (também conhecido como Sofacy/GAMEFISH), um downloader de segunda fase do APT28, é documentado pelo MITRE ATT&CK como utilizando este mecanismo em operações de espionagem contra alvos na Europa Oriental e organizações de segurança europeias.
### Cobalt Group - Ataques ao Setor Financeiro
O [[g0080-cobalt-group|Cobalt Group]], grupo criminoso especializado em ataques a instituições financeiras e ATMs, combina logon scripts com ferramentas de pós-exploração como [[s0154-cobalt-strike|Cobalt Strike]] para manter acesso prolongado em redes bancárias. A persistência via `HKCU` é especialmente eficaz em ambientes de caixas eletrônicos e sistemas de pagamento, onde contas de serviço sem privilégios administrativos são comuns.
### KGH_SPY - Coleta de Credenciais
O [[s0526-kghspy|KGH_SPY]], implante associado ao grupo Kimsuky (APT43 da Coreia do Norte), utiliza `UserInitMprLogonScript` para persistência de um keylogger e módulo de coleta de credenciais. A execução via logon script garante que o módulo de captura inicie junto com cada sessão do usuário alvo.
## Detecção
### Regra Sigma
```yaml
title: Logon Script Persistence via UserInitMprLogonScript Registry Key
id: 5f2a7b3c-8d1e-4f9a-b2c6-1e7d8f3a9b4c
status: stable
description: >
Detecta criação ou modificação da chave de Registro
HKCU\Environment\UserInitMprLogonScript, utilizada para
persistência de logon scripts maliciosos no Windows.
Técnica MITRE ATT&CK T1037.001.
references:
- https://attack.mitre.org/techniques/T1037/001/
author: RunkIntel
daté: 2026-03-25
tags:
- attack.persistence
- attack.t1037.001
logsource:
category: registry_set
product: windows
detection:
selection:
TargetObject|contains: '\Environment\UserInitMprLogonScript'
filter_legitimate:
Image|startswith:
- 'C:\Windows\System32\'
- 'C:\Windows\SysWOW64\'
condition: selection and not filter_legitimate
fields:
- TargetObject
- Details
- Image
- User
falsepositives:
- Scripts de logon legítimos configurados por administradores de sistema
- Software de gerenciamento de endpoint que configure variáveis de logon
level: high
```
**Fontes de dados adicionais para correlação:**
| Fonte | O que monitorar |
|-------|-----------------|
| Windows Registry: Key Creation / Modification | Criação ou modificação de `HKCU\Environment\UserInitMprLogonScript` |
| Process: Process Creation | `userinit.exe` iniciando processos inesperados após logon |
| File: File Creation | Scripts (`.bat`, `.vbs`, `.ps1`) criados em diretórios de usuário |
| Command: Command Execution | `reg add` ou PowerShell modificando chaves de Environment |
| Active Directory: Object Modification | Alterações em atributos `scriptPath` de objetos de usuário no AD |
## Mitigação
| ID | Mitigação | Aplicação |
|----|-----------|-----------|
| M1024 | [[m1024-restrict-registry-permissions\|Restrict Registry Permissions]] | Monitorar e restringir escrita em `HKCU\Environment` via auditoria de Registro; alertas SIEM para qualquer modificação nessa chave por processos fora de `C:\Windows\System32\` |
**Recomendações complementares:**
- Implementar baseline de inventário do valor `UserInitMprLogonScript` para todos os usuários do domínio via script de auditoria periódica
- Auditar regularmente GPOs de logon script no Active Directory para detectar scripts não autorizados
- Configurar regras de detecção no EDR para `userinit.exe` gerando processos filhos a partir de diretórios fora de `C:\Windows\`
- Usar o recurso de auditoria de acesso a objetos do Windows para registrar qualquer leitura ou escrita na chave `HKCU\Environment`
## Contexto Brasil/LATAM
No contexto brasileiro e latino-americano, a técnica T1037.001 é relevante principalmente em dois cenários:
**Ataques ao setor financeiro:** O [[g0080-cobalt-group|Cobalt Group]] e grupos similares de crime organizado cibernético têm histórico documentado de ataques a bancos brasileiros e latino-americanos. A persistência via logon script é utilizada em fases de pós-comprometimento de sistemas internos bancários, frequentemente em combinação com ferramentas de acesso remoto como [[s0154-cobalt-strike|Cobalt Strike]] ou ScreenConnect.
**Espionagem governamental:** Grupos de espionagem como o [[g0007-apt28|APT28]] têm como alvo organismos governamentais e entidades diplomáticas na região. Embora os alvos primários do APT28 sejam Europa e OTAN, há registros de interesse em países do MERCOSUL e organizações de infraestrutura crítica na América do Sul.
**Contexto local:** No Brasil, onde o cenário de ameaças é dominado por grupos de crime financeiro como [[lapsus-group|LAPSUS$]] e gangues de ransomware como [[lockbit|LockBit]], a técnica de logon script é frequentemente encontrada em fases de pós-exploração de ataques a redes corporativas, especialmente em ambientes com Active Directory mal configurado e sem monitoramento de Registro.
Equipes de [[_sectors|SOC]] no Brasil devem priorizar a detecção desta técnica em ambientes com grandes volumes de estações de trabalho Windows em domínio Active Directory, especialmente no setor financeiro ([[financial|financeiro]]) e em organizações governamentais ([[sector-government|governo]]).
## Referências
- [[t1037-boot-or-logon-initialization-scripts|T1037 - Boot or Logon Initialization Scripts]] - técnica pai
- [[g0007-apt28|APT28]] - grupo de ameaça que usa esta técnica
- [[g0080-cobalt-group|Cobalt Group]] - grupo criminoso com uso documentado
- [[s0438-attor|Attor]] - malware do APT28 com persistência via logon script
- [[s0251-zebrocy|Zebrocy]] - downloader do APT28 com uso desta técnica
- [[s0044-jhuhugit|JHUHUGIT]] - implante APT28, documentado com T1037.001
- [[s0526-kghspy|KGH_SPY]] - implante Kimsuky com logon script persistence
- [[m1024-restrict-registry-permissions|M1024 - Restrict Registry Permissions]] - mitigação MITRE
- [[s0154-cobalt-strike|Cobalt Strike]] - framework C2 frequentemente distribuído via logon scripts
- [[t1059-001-powershell|T1059.001 - PowerShell]] - técnica complementar frequentemente usada com T1037.001
---
*Fonte: MITRE ATT&CK - T1037.001 Logon Script (Windows), v16.2*