# T1104 - Canais de Comando e Controle em Múltiplos Estágios ## Descrição Canais de C2 em múltiplos estágios são uma estratégia usada por adversários para estruturar a comunicação com sistemas comprometidos em fases progressivas, cada uma com um nível maior de capacidade e controle. A ideia central é separar as funções de acesso inicial das funções de controle avançado, tornando o rastreamento e o bloqueio da infraestrutura maliciosa muito mais difícil para defensores. No estágio inicial, o implante instalado na máquina comprometida realiza chamadas de retorno (*callbacks*) para um servidor de primeiro nível. Esse servidor tem capacidades limitadas: geralmente coleta informações básicas do host, verifica o ambiente, atualiza o agente e decide se o alvo tem valor suficiente para avançar. Se o alvo for considerado relevante, um segundo agente - mais completo e com mais funcionalidades - é carregado e direcionado para um servidor de C2 de segundo estágio completamente diferente. Essa arquitetura separada serve a múltiplos propósitos operacionais. Primeiro, protege a infraestrutura principal: se o servidor de primeiro estágio for identificado e bloqueado, o operador ainda mantém acesso via canal secundário. Segundo, dificulta a correlação: as duas fases raramente compartilham IPs, domínios ou certificados. Terceiro, permite triagem eficiente - sistemas sem interesse operacional ficam presos no primeiro estágio, nunca chegando ao canal principal. O uso de [[t1008-fallback-channels|canais de fallback]] no primeiro estágio aumenta ainda mais a resiliência. **Contexto Brasil/LATAM:** Grupos como [[g0032-lazarus-group|Lazarus Group]] e [[g0096-apt41|APT41]] com atuação documentada na América Latina utilizam arquiteturas multi-estágio para manter persistência em ambientes de alto valor, como bancos, operadoras de telecomúnicações e órgãos governamentais. O setor financeiro brasileiro é alvo frequente: a complexidade da infraestrutura multi-estágio permite que operadores mantenham acesso por semanas ou meses sem detecção, especialmente em organizações sem visibilidade de tráfego de rede em profundidade. Campanhas atribuídas ao [[g0069-mango-sandstorm|MuddyWater]] também utilizam loaders de primeiro estágio - como o [[s1086-snip3|Snip3]] - para instalar RATs secundários apenas em alvos de interesse confirmado. ## Attack Flow ```mermaid graph TB A[Acesso Inicial] --> B[Loader 1° Estágio] B --> C[**C2 Multi-Estágio**] C --> D[RAT 2° Estágio] D --> E[Exfiltração / Movimento Lateral] ``` ## Como Funciona **1. Preparação** O adversário configura ao menos dois servidores de C2 com infraestrutura completamente separada - endereços IP, registradores de domínio, provedores de hospedagem e certificados TLS distintos. O implante de primeiro estágio é minimalista e pode ser um [[s1160-latrodectus|Latrodectus]], [[s0534-bazar|Bazar]] ou dropper similar, compilado com callbacks para o servidor de triagem. **2. Execução** Após comprometer o alvo via phishing ou exploração de vulnerabilidade, o implante de primeiro estágio executa e inicia o beacon para o C2 inicial. O servidor coleta fingerprint do host (SO, domínio, privilégios, processos em execução) e determina se o alvo tem valor operacional. Caso positivo, um RAT completo - como [[s0022-uroburos|Uroburos]], [[s0069-blackcoffee|BLACKCOFFEE]] ou similar - é entregue ao host e redirecionado para o servidor de segundo estágio. **3. Pós-execução** O C2 de segundo estágio oferece shell reverso interativo, capacidade de pivotamento, coleta de credenciais e exfiltração de dados. O canal de primeiro estágio pode ser mantido como fallback ou abandonado. Os dois servidores nunca compartilham logs ou telemetria - se um é descoberto, o outro permanece operacional. **Exemplo:** ```bash # Artefato de detecção: processo filho inesperado iniciando conexão de rede para dois destinos distintos # Primeiro estágio: beacon HTTP simples para domínio de curta vida # Segundo estágio: beacon HTTPS para CDN ou domínio legítimo comprometido # Indicador: process_name=loader.exe, parent=word.exe, dest_ip=<C2-1> # Seguido por: process_name=rat.exe, parent=svchost.exe, dest_ip=<C2-2> ``` ## Detecção **Fontes de dados:** Logs de proxy/firewall (NetFlow, Zeek), EDR (processo iniciando conexões de rede), DNS (resolução de domínios de curta vida), Event ID 4688 (criação de processo com linha de comando suspeita). ```yaml title: Multi-Stage C2 Channel - Sequential Beacon to Distinct Infrastructure id: 7c3a1f82-4e9b-4d2a-b831-0c5f6a7e9d10 status: experimental description: Detects a process spawning a child process that immediately initiates network connections to a different C2 destination, indicative of multi-stage channel handoff behavior. logsource: category: process_creation product: windows detection: selection: ParentImage|endswith: - '\word.exe' - '\excel.exe' - '\powershell.exe' - '\wscript.exe' - '\cscript.exe' CommandLine|contains: - 'http' - 'download' - 'invoke' condition: selection falsepositives: - Administrative activity - Legitimaté software updates level: medium tags: - attack.command_and_control - attack.t1104 ``` ## Mitigação | Mitigação | Recomendação Prática | |-----------|---------------------| | [[m1031-network-intrusion-prevention\|M1031 - Network Intrusion Prevention]] | Implementar inspeção profunda de pacotes (DPI) e IDS com assinaturas para padrões de beacon periódico; bloquear conexões de saída não autorizadas de processos do sistema. | ## Threat Actors que Usam - [[g0022-apt3|APT3]] - [[g0032-lazarus-group|Lazarus Group]] - [[g0069-mango-sandstorm|MuddyWater]] - [[g0096-apt41|APT41]] ## Software Associado - [[s1141-lunarweb|LunarWeb]] (malware) - [[s0069-blackcoffee|BLACKCOFFEE]] (malware) - [[s0476-valak|Valak]] (malware) - [[s0534-bazar|Bazar]] (malware) - [[s1086-snip3|Snip3]] (malware) - [[s1160-latrodectus|Latrodectus]] (malware) - [[s0022-uroburos|Uroburos]] (malware) --- *Fonte: [MITRE ATT&CK - T1104](https://attack.mitre.org/techniques/T1104)*