# T1547.001 - Registry Run Keys ## Técnica Pai Esta é uma sub-técnica de [[t1547-boot-logon-autostart-execution|T1547 - T1547 - Boot or Logon Autostart Execution]]. ## Descrição **T1547.001 - Registry Run Keys** é uma subtécnica da categoria [[t1547-boot-logon-autostart-execution|T1547 - Boot or Logon Autostart Execution]], classificada na tática de [[Persistence|Persistência]] do MITRE ATT&CK. Nela, adversários inserem entradas nas chaves de registro `Run` e `RunOnce` do Windows para garantir que um executável malicioso sejá iniciado automaticamente toda vez que o usuário faz login ou o sistema é reiniciado. É uma das técnicas de persistência mais antigas e, por isso mesmo, uma das mais amplamente documentadas - e ainda assim continua altamente eficaz no ambiente real. As chaves de registro mais exploradas são `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run`, `HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run` e seus equivalentes `RunOnce`. A chave em `HKCU` exige apenas privilégios de usuário comum, tornando-a acessível mesmo sem elevação de permissões. Já as entradas em `HKLM` oferecem persistência global para todos os usuários da máquina, mas requerem privilégios administrativos. O valor `RunOnce` executa o programa uma única vez e remove a entrada automaticamente, sendo muito utilizado para launchers ou droppers que precisam de uma única jánela de execução sem deixar rastro permanente. O que torna essa técnica tão duradoura é a sua invisibilidade operacional: softwares legítimos como antivírus, updaters corporativos e aplicativos de inicialização residem exatamente nas mesmas chaves. Isso cria um ruído de fundo que dificulta a triagem manual. [[g0032-lazarus-group|Lazarus Group]] usa run keys como mecanismo primário de persistência em campanhas de espionagem e roubo financeiro. [[s0531-grandoreiro|Grandoreiro]], trojan bancário de origem brasileira, registra seu payload nessas chaves para manter acesso contínuo a sessões de internet banking. [[qilin|Qilin]] configura run keys como fallback antes de iniciar a fase de criptografia do ransomware. **Contexto Brasil/LATAM:** No Brasil, run keys são exploradas de forma massiva por famílias de malware de origem regional, especialmente trojans bancários como [[s0531-grandoreiro|Grandoreiro]], Mekotio e Casbaneiro. Esses grupos têm como alvo principal usuários de home banking e pequenas empresas do setor financeiro. A prevalência de máquinas com Windows desatualizado em ambientes corporativos brasileiros - especialmente no setor público - amplifica o risco, pois controles de logging avançado (Sysmon, ScriptBlock logging) raramente estão habilitados por padrão nessas organizações. ## Attack Flow ```mermaid graph TB A[Acesso Inicial<br/>T1566 Phishing] --> B[Execução<br/>T1059 Script/Payload] B --> C[Persistência<br/>**T1547.001 Run Keys**]:::highlight C --> D[Privilege Escalation<br/>T1548] C --> E[C2 Callback<br/>T1071] classDef highlight fill:#e74c3c,color:#fff,stroke:#c0392b ``` ## Como Funciona 1. **Preparação:** O adversário obtém execução inicial via phishing ([[t1566-phishing|T1566]]), exploit ou download malicioso. O payload - geralmente um dropper ou loader - é gravado em disco, frequentemente em `%APPDATA%`, `%TEMP%` ou pastas de sistema. 2. **Execução:** O dropper ou o próprio malware usa `reg add`, WMI, scripts [[t1059-001-powershell|PowerShell]] ou a API Win32 `RegSetValueEx` para inserir uma entrada na chave `Run`. O valor criado aponta para o caminho do executável malicioso. Pode ser mascarado com nomes que imitam software legítimo (ex: `"WindowsUpdaté"`, `"OneDriveSync"`). 3. **Pós-execução:** Na próxima reinicialização ou login, o Windows carrega automaticamente todos os valores presentes nas chaves `Run`, executando o malware sem interação do usuário. A partir desse ponto, o adversário mantém acesso persistente e pode usar o C2 para [[t1033-system-owneruser-discovery|descoberta de ambiente]], movimentação lateral e exfiltração. ## Detecção **Fontes de dados:** - **Windows Registry (Sysmon Event ID 13):** Monitorar criação/modificação em `HKCU\...\Run` e `HKLM\...\Run`. Sysmon com configuração de RegSetValue captura isso com process name, timestamp e valor inserido. - **Process Creation (Sysmon Event ID 1 / Windows Event ID 4688):** Processos iniciados pelo `userinit.exe` ou `explorer.exe` como filhos diretos provenientes de caminhos fora de `C:\Program Files\` merecem aténção. - **Windows Event ID 4657:** Auditoria nativa de modificação no registro (requer GPO de auditoria de objeto habilitada). - **Autoruns / Baseline comparison:** Ferramentas como Sysinternals Autoruns permitem baseline e detecção de desvio. Em ambientes SOC, a comparação periódica de autoruns é uma prática eficaz. **Sigma Rule:** ```yaml title: Suspicious Registry Run Key Creation id: a7f3b2d1-4e9c-4f8a-b3d2-1c5e7f9a0b2d status: experimental description: Detecta criação de valores em chaves Run/RunOnce que apontam para caminhos suspeitos logsource: product: windows category: registry_set detection: selection: EventType: SetValue TargetObject|contains: - '\CurrentVersion\Run' - '\CurrentVersion\RunOnce' Details|contains: - '\AppData\Local\Temp\' - '\AppData\Roaming\' - '\Users\Public\' - 'cmd.exe /c' - 'powershell' - 'wscript' - 'mshta' condition: selection falsepositives: - Software legítimo instalado em perfil de usuário - Instaladores que usam RunOnce para configuração pós-reboot level: medium tags: - attack.persistence - attack.t1547.001 ``` ## Mitigação | Mitigação | Recomendação Prática | |-----------|---------------------| | Auditoria de Registro | Habilitar GPO de auditoria em `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run` e equivalentes HKCU. Exportar baseline mensal e comparar via script ou SIEM. | | Controle de Aplicações (M1038) | Usar AppLocker ou Windows Defender Application Control (WDAC) para bloquear execução de binários em `%TEMP%`, `%APPDATA%` e `%PUBLIC%` - caminhos atípicos para software legítimo. | | Least Privilege (M1026) | Limitar usuários comuns de gravar em `HKLM\...\Run`. Políticas de UAC rigorosas reduzem o alcance de entradas globais. | | EDR/Sysmon | Implantar Sysmon com templaté de configuração do SwiftOnSecurity ou equivalente. Regras de RegSetValue para chaves Run são essenciais e de baixo custo operacional. | | Inventário de Autoruns | Em ambientes corporativos brasileiros, executar Autoruns periodicamente e revisar entradas novas ou de caminhos incomuns. Integrar ao processo de hardening de estações. | ## Threat Actors - [[g0032-lazarus-group|Lazarus Group]] - usa run keys em campanhas de espionagem financeira e roubo a bancos, incluindo operações com foco em instituições da América Latina. - [[s0531-grandoreiro|Grandoreiro]] - trojan bancário brasileiro que persiste via run keys para manter sessões ativas em sistemas de internet banking no Brasil, México e Espanha. - [[qilin|Qilin]] - grupo de ransomware-as-a-service que registra seu payload em run keys como mecanismo de sobrevivência antes da fase destrutiva de criptografia. ## Software Associado Técnica amplamente usada por diversas famílias de malware. Consulte também [[t1112-modify-registry|T1112 - Modify Registry]] e [[Job]] para variantes relacionadas de persistência. --- *Fonte: [MITRE ATT&CK - T1547.001](https://attack.mitre.org/techniques/T1547/001)*