# T1546.012 - Image File Execution Options Injection > [!danger] Técnica de Persistência e Escalação de Privilégios - Windows > Adversários manipulam chaves de Registro IFEO para interceptar a execução de programas legítimos, redirecionando para payloads maliciosos - incluindo acesso privilegiado via tela de login sem autenticação. ## Descrição A técnica **T1546.012 - Image File Execution Options Injection** explora um recurso legítimo do Windows originalmente concebido para desenvolvedores: o **Image File Execution Options (IFEO)**. Este mecanismo, armazenado no Registro em `HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\`, permite que um debugger sejá automaticamente anexado a qualquer executável quando ele é iniciado. Adversários abusam desta funcionalidade de duas formas principais: **1. Injeção de Debugger Malicioso**: Ao registrar um executável malicioso como "debugger" de um programa legítimo, qualquer tentativa de iniciar o programa legítimo resulta na execução do payload malicioso **em vez de** (ou antes de) o programa original. **2. Silent Process Exit Monitoring**: Um mecanismo complementar que permite registrar um monitor a ser executado quando um processo específico é encerrado de forma silenciosa (sem código de saída normal). Configurado em `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\`. O caso de abuso mais crítico envolve a substituição de **ferramentas de acessibilidade do Windows** (como `utilman.exe`, `sethc.exe`, `osk.exe`) por `cmd.exe` ou outro shell - técnica conhecida como **Accessibility Feature Backdoor** ou **Sticky Keys Backdoor**. Como essas ferramentas podem ser acionadas na tela de login (antes da autenticação), o adversário obtém um shell com privilégios **SYSTEM** sem precisar de credenciais. Esta técnica é classificada pelo [[mitre-attack|MITRE ATT&CK]] como sub-técnica de [[t1546-event-triggered-execution|T1546 - Event Triggered Execution]] e é amplamente documentada em operações de APT, ransomware e malware financeiro. ## Como Funciona ### Vetor 1 - Debugger IFEO (Persistência Genérica) O adversário modifica ou cria uma entrada no Registro: ``` HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\alvo.exe Debugger = "C:\caminho\payload.exe" ``` Quando qualquer usuário (ou processo) executa `alvo.exe`, o Windows lança `payload.exe` com `alvo.exe` como argumento. O payload malicioso é executado com o contexto de privilégio do processo que invocou o alvo. Exemplos de alvos comuns escolhidos por adversários: - Ferramentas de segurança: `MsMpEng.exe`, `procexp.exe`, `autoruns.exe` - Processos do sistema: `svchost.exe`, `explorer.exe` - Ferramentas de acessibilidade: `utilman.exe`, `sethc.exe`, `magnify.exe` ### Vetor 2 - Tela de Login (Escalação SYSTEM sem Credenciais) O ataque mais impactante: registrar `cmd.exe` como debugger de `utilman.exe` (Central de Facilidade de Acesso) ou `sethc.exe` (Sticky Keys): ``` HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe Debugger = "C:\Windows\System32\cmd.exe" ``` Resultado: pressionar `Win+U` na tela de login - ou o atalho de Sticky Keys (Shift×5) - abre um prompt de comando com privilégios SYSTEM, **sem necessidade de senha**. Esta é uma das técnicas mais exploradas por atacantes que já têm acesso físico ou RDP ao sistema. ### Vetor 3 - Desabilitando Defesas (Impair Defenses) Um uso menos óbvio: registrar um debugger inválido (ou `/dev/null`) para ferramentas de segurança, efetivamente impedindo que sejam executadas: ``` HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\procmon.exe Debugger = "C:\Windows\System32\svchost.exe" ``` O [[s0559-sunburst|SUNBURST]] e o [[s0461-sdbbot|SDBbot]] utilizam esta variante para desabilitar ferramentas de análise e monitoramento. ### Vetor 4 - Silent Process Exit ``` HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\alvo.exe MonitorProcess = "C:\payload.exe" ReportingMode = 1 ``` O `payload.exe` é executado automaticamente quando `alvo.exe` termina de forma silenciosa, garantindo persistência mesmo após tentativas de matar o processo malicioso original. ## Attack Flow ```mermaid graph TB A([Adversário - acesso administrativo ao sistema]) --> B{Objetivo da injeção} B -->|Persistência genérica| C[Modifica IFEO de programa legítimo] B -->|Escalação SYSTEM| D[Modifica IFEO de ferramenta de acessibilidade] B -->|Desabilitar defesas| E[Modifica IFEO de software de segurança] B -->|Persistência via exit| F[Configura SilentProcessExit monitor] C --> G[Registra payload como Debugger] D --> H[Registra cmd.exe como Debugger de utilman.exe] E --> I[Registra binário inválido como Debugger] F --> J[Payload invocado ao término do processo alvo] G --> K[Próxima execução do programa alvo dispara payload] H --> L[Acionamento via tela de login - Win+U ou Shift×5] I --> M[Ferramenta de segurança deixa de funcionar] L --> N[Shell SYSTEM sem autenticação] K --> O[Código malicioso executado com contexto herdado] J --> O N --> P[Dump de credenciais - T1003] O --> P P --> Q([Comprometimento total - movimento lateral]) M --> R([Persistência não detectada]) style A fill:#c0392b,color:#fff style N fill:#e74c3c,color:#fff style Q fill:#27ae60,color:#fff style R fill:#8e44ad,color:#fff style H fill:#e67e22,color:#fff ``` ## Exemplos de Uso ### SUNBURST (SolarWinds Supply Chain Attack) O malware [[s0559-sunburst|SUNBURST]], utilizado no ataque de supply chain à SolarWinds em 2020 e atribuído ao [[g0016-apt29|APT29]] (Cozy Bear / SVR russo), empregou IFEO Injection como parte do seu arsenal de evasão e persistência. Específicamente, o SUNBURST registrava debuggers inválidos em chaves IFEO de ferramentas de análise e segurança para impedir que analistas detectassem sua presença - uma implementação do vetor 3 descrito acima. O ataque à SolarWinds comprometeu aproximadamente 18.000 organizações globalmente, incluindo agências governamentais dos EUA. No Brasil, clientes da plataforma Orion (SolarWinds) em setores de tecnologia e governo foram potencialmente expostos. ### SDBbot (TA505 / Evil Corp) O [[s0461-sdbbot|SDBbot]] é um RAT (Remote Access Trojan) desenvolvido e operado pelo grupo [[ta505|TA505]] (também conhecido como Evil Corp), responsável por campanhas de distribuição massiva de malware incluindo [[s0384-dridex|Dridex]] e [[clop|Cl0p ransomware]]. O SDBbot utiliza IFEO Injection como mecanismo de persistência primário, registrando-se como debugger de processos do sistema Windows para garantir execução a cada reinicialização. O TA505 tem histórico de campanhas no Brasil, especialmente contra o setor financeiro - tornando o SDBbot diretamente relevante para o contexto LATAM. ### Sticky Keys Backdoor - Ataques a RDP Expostos A variante de tela de login (Vetor 2) é amplamente documentada em ataques a servidores Windows com RDP exposto. Esta é uma das técnicas mais usadas por grupos de ransomware para garantir acesso persistente após comprometimento inicial: 1. Adversário acessa servidor via RDP com credenciais roubadas (ou força bruta) 2. Modifica IFEO de `sethc.exe` para apontar para `cmd.exe` 3. Credenciais são alteradas ou conta é bloqueada 4. Adversário acessa a tela de login via RDP e pressiona Shift cinco vezes 5. Obtém shell SYSTEM - acesso total sem credenciais Grupos de ransomware que operam no Brasil, como afiliados do [[lockbit|LockBit]] e [[conti|Conti]], documentadamente utilizam esta técnica para manter acesso entre fases de um ataque. ### Acessibilidade + RDP (Cenário Específico LATAM) No contexto latino-americano, onde muitas PMEs e órgãos públicos expõem RDP diretamente à Internet sem autenticação multifator, a combinação de IFEO Injection com [[t1021-001-remote-desktop-protocol|T1021.001 - Remote Desktop Protocol]] representa um vetor de ataque crítico. O [[sources|CERT.br]] reporta consistentemente que RDP exposto é o principal vetor de intrusão em incidentes reportados no Brasil. ## Detecção ### Sigma Rule - IFEO Debugger Injection via Registry ```yaml title: Image File Execution Options Debugger Injection id: c9d3e567-8901-23fg-bcde-345678901cde status: stable description: > Detecta a criação ou modificação de chaves de Registro IFEO com valor Debugger, indicando possível persistência ou escalação via T1546.012. author: RunkIntel daté: 2026-03-24 references: - https://attack.mitre.org/techniques/T1546/012/ tags: - attack.persistence - attack.privilege_escalation - attack.defense_evasion - attack.t1546.012 logsource: category: registry_set product: windows detection: selection_ifeo: TargetObject|startswith: - 'HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\' - 'HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\' TargetObject|endswith: '\Debugger' selection_accessibility: TargetObject|contains: - 'utilman.exe\Debugger' - 'sethc.exe\Debugger' - 'osk.exe\Debugger' - 'magnify.exe\Debugger' - 'narrator.exe\Debugger' - 'displayswitch.exe\Debugger' filter_legitimate: Details|contains: - 'C:\Program Files\Windows Kits\' - 'C:\Program Files (x86)\Microsoft Visual Studio\' - 'vsjitdebugger.exe' condition: (selection_ifeo and not filter_legitimate) or selection_accessibility falsepositives: - Instalação de Visual Studio e ferramentas de debug legítimas - Ferramentas de análise de crash (Dr. Watson configurado corretamente) level: high fields: - TargetObject - Details - Image - User ``` ### Sigma Rule - Silent Process Exit Monitor ```yaml title: Silent Process Exit Monitor Registration id: d0e4f678-9012-34gh-cdef-456789012def status: experimental description: > Detecta registro de monitor para Silent Process Exit - variante IFEO usada para persistência via T1546.012. author: RunkIntel daté: 2026-03-24 tags: - attack.persistence - attack.t1546.012 logsource: category: registry_set product: windows detection: selection: TargetObject|startswith: - 'HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\' TargetObject|contains: - '\MonitorProcess' condition: selection falsepositives: - Ferramentas de monitoramento legítimas de crash reporting level: medium ``` ### Fontes de Dados Recomendadas | Fonte | O que monitorar | |-------|----------------| | Sysmon Event ID 13 | Modificações em `HKLM\...\Image File Execution Options\*\Debugger` | | Sysmon Event ID 1 | Processos-pai incomuns ao iniciar ferramentas de acessibilidade | | Windows Event Log 4688 | Criação de processo com linhagem suspeita | | EDR (comportamental) | `cmd.exe` ou `powershell.exe` com parent `winlogon.exe` | | Sysmon Event ID 7 | Carga de DLL incomum em processos de acessibilidade | > [!warning] Indicador Crítico > Qualquer processo filho de `winlogon.exe` que não sejá um dos processos legítimos esperados (como `userinit.exe`, `LogonUI.exe`) é um forte indicador de comprometimento via IFEO nas ferramentas de acessibilidade. Especialmente `cmd.exe`, `powershell.exe` ou qualquer binário fora de `C:\Windows\System32\`. ## Mitigação | ID | Mitigação | Descrição | Prioridade | |----|-----------|-----------|------------| | - | Monitoramento IFEO | Alertar sobre qualquer escrita em `HKLM\...\Image File Execution Options\*\Debugger` | Crítica | | - | Integridade de arquivos de acessibilidade | Verificar que `utilman.exe`, `sethc.exe` não foram substituídos | Alta | | - | Restrição de Registro via GPO | Bloquear escrita em chaves IFEO para usuários não administradores | Alta | | - | Windows Defender Credential Guard | Impede dump de credenciais mesmo com shell SYSTEM | Média | | - | NLA para RDP | Exigir Network Level Authentication no RDP - impede acesso à tela de login sem credenciais | Alta | | - | MFA em contas administrativas | Proteger contra uso indevido de credenciais administrativas para modificar IFEO | Alta | | - | Windows Defender Application Control (WDAC) | Restringir quais binários podem ser registrados como debuggers | Média | > [!tip] Verificação Rápida de Comprometimento > Para verificar se ferramentas de acessibilidade foram comprometidas via IFEO, execute no PowerShell: > ```powershell > Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options" | > Where-Object { $_.PSChildName -match "utilman|sethc|osk|magnify|narrator" } | > Get-ItemProperty -Name Debugger -ErrorAction SilentlyContinue > ``` > Qualquer resultado indica comprometimento. ## Contexto Brasil/LATAM ### RDP Exposto - Vetor de Entrada Dominante O [[sources|CERT.br]] e relatórios da [[_crowdstrike|CrowdStrike]] e [[kaspersky|Kaspersky]] LATAM consistentemente apontam o RDP exposto como o principal vetor de intrusão em organizações brasileiras. Grupos de ransomware que operam na região - incluindo afiliados do [[lockbit|LockBit]], [[blackcat|BlackCat]] e [[hive|Hive]] (descontinuado) - utilizam IFEO Injection em ferramentas de acessibilidade como backdoor persistente em servidores Windows comprometidos via RDP. O cenário típico no Brasil envolve: 1. Scan de IPs brasileiros em busca de RDP exposto (porta 3389) 2. Acesso via credenciais compradas em mercados de acesso inicial (ex: Genesis Market, Russian Market) 3. Instalação de backdoor IFEO para manter acesso persistente 4. Planejamento e execução do ransomware em momento posterior ### Setor Público e LGPD Órgãos públicos brasileiros - que operam sistemas Windows em larga escala e frequentemente têm equipes de segurança limitadas - são alvos recorrentes. A IFEO Injection é particularmente perigosa nesses ambientes por ser uma técnica "living off the land" que não requer download de ferramentas adicionais e passa despercebida por soluções de antivírus tradicionais. Com a implementação da [[lgpd|LGPD (Lei Geral de Proteção de Dados)]], incidentes envolvendo acesso não autorizado a dados governamentais ganham dimensão legal adicional no Brasil. ### APT29 e Espionagem no Brasil O [[g0016-apt29|APT29]] (Cozy Bear / SVR), responsável pelo ataque SolarWinds que empregou IFEO via [[s0559-sunburst|SUNBURST]], tem documentado interesse em organizações brasileiras - especialmente no contexto diplomático e em empresas do setor de energia. O Brasil como membro do BRICS e sede de infraestrutura crítica global torna-o alvo estratégico para espionagem de nação-estado. > [!info] Relação com T1546.008 - Accessibility Features > A IFEO Injection em ferramentas de acessibilidade é funcionalmente idêntica à técnica [[t1546-008-accessibility-features|T1546.008 - Accessibility Features]], com a diferença técnica de que T1546.008 substitui diretamente o binário em disco, enquanto T1546.012 usa o mecanismo de Registro IFEO como intermediário. O resultado prático - shell SYSTEM na tela de login - é o mesmo. ## Referências - [MITRE ATT&CK - T1546.012](https://attack.mitre.org/techniques/T1546/012/) - [FireEye - SUNBURST Technical Analysis](https://www.mandiant.com/resources/sunburst-additional-technical-details) - [Proofpoint - SDBbot Technical Analysis](https://www.proofpoint.com/us/threat-insight/post/ta505-distributes-new-sdbbot-remote-access-trojan-get2-downloader) - [Microsoft - Image File Execution Options](https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/image-file-execution-options) - [[t1546-event-triggered-execution|T1546 - Event Triggered Execution]] (técnica pai) - [[t1546-008-accessibility-features|T1546.008 - Accessibility Features]] (técnica relacionada) - [[t1021-001-remote-desktop-protocol|T1021.001 - Remote Desktop Protocol]] (vetor combinado comum) - [[t1055-process-injection|T1055 - Process Injection]] (técnica relacionada) - [[t1562-impair-defenses|T1562 - Impair Defenses]] (uso secundário de IFEO) - [[t1003-os-credential-dumping|T1003 - OS Credential Dumping]] (objetivo pós-escalação) - [[s0559-sunburst|SUNBURST]] (malware associado) - [[s0461-sdbbot|SDBbot]] (malware associado) - [[g0016-apt29|APT29]] (ator associado via SUNBURST) - [[ta505|TA505]] (ator associado via SDBbot)