# T1001.003 - Falsificação de Protocolo ou Serviço ## Técnica Pai Esta é uma sub-técnica de [[t1001-data-obfuscation|T1001 - T1001 - Data Obfuscation]]. ## Descrição Adversários sofisticados não apenas usam protocolos legítimos para C2 - eles os falsificam ativamente, criando tráfego que imita fielmente serviços conhecidos e confiáveis. Essa sub-técnica de [[t1001-data-obfuscation|T1001 - Data Obfuscation]] representa um nível mais elevado de evasão: o atacante fabrica handshakes SSL/TLS falsos, manipula cabeçalhos HTTP para parecer com APIs do Google, ou mimetiza o padrão de comunicação de serviços como Gmail, Yahoo Messenger ou Google Drive. A diferença em relação ao abuso direto de protocolos (ex: [[t1071-001-web-protocols|T1071.001]]) está na falsificação ativa: o adversário não apenas usa HTTPS, mas constrói o tráfego para que se pareça específicamente com uma comunicação legítima de um serviço específico, incluindo o certificado TLS, os endpoints URI, os cabeçalhos e o payload. Isso pode enganar não só analistas humanos, mas ferramentas automatizadas de inspeção de tráfego. Outra variação envolve simular handshakes TLS sem de fato implementar criptografia - o tráfego parece criptografado para ferramentas de inspeção simples, mas na verdade não é. Isso pode iludir sistemas de segurança que assumem que tráfego TLS é seguro e por isso não o inspecionam profundamente. Ferramentas como [[s0154-cobalt-strike|Cobalt Strike]] permitem a criação de "Malleable C2 profiles" que imitam com precisão o tráfego de serviços populares. **Contexto Brasil/LATAM:** O [[g0032-lazarus-group|Lazarus Group]], vinculado à Coreia do Norte e com histórico extenso de operações contra instituições financeiras, é um dos principais usuários desta técnica - relevante dada sua atuação documentada contra exchanges de criptomoedas e bancos na América Latina. O grupo [[g0129-mustang-panda|Mustang Panda]] também emprega falsificação de protocolo em campanhas de espionagem contra governos e organizações diplomáticas, incluindo alvos na região. A crescente adoção de inspeção SSL superficial em empresas brasileiras de médio porte torna esse vetor particularmente eficaz no contexto nacional. ## Attack Flow ```mermaid graph TB A[Acesso Inicial] --> B[Implantação de Agente C2] B --> C[**T1001.003 - Falsificação de Protocolo**] C --> D[C2 Persistente] D --> E[Exfiltração Furtiva] ``` ## Como Funciona 1. **Preparação do perfil de falsificação:** O adversário estuda o padrão de tráfego do serviço-alvo (ex: Google Drive API). Desenvolve um perfil que replica cabeçalhos HTTP, parâmetros URI, tamanho de pacotes e timing característicos do serviço legítimo. 2. **Configuração do implante:** O agente no host comprometido é configurado com o perfil de falsificação. Ferramentas como [[s0154-cobalt-strike|Cobalt Strike]] usam "Malleable C2 profiles" para esse fim; malware como [[s1228-pubload|PUBLOAD]] e [[s1227-starproxy|StarProxy]] têm falsificação embutida. 3. **Handshake TLS falso (opcional):** Alguns implantes realizam uma negociação TLS simulada - os primeiros bytes imitam um Client Hello legítimo, mas o canal real pode não ser TLS real, ou usa certificados autoassinados que imitam CAs conhecidas. 4. **Comúnicação C2 disfarçada:** Comandos e respostas são trocados dentro do protocolo falsificado. Para um analista olhando o tráfego raw, parece uma sessão normal com um serviço de nuvem ou CDN. 5. **Evasão de correlação:** Como o tráfego imita serviços conhecidos (e frequentemente confiáveis), regras de firewall e proxies baseadas em reputação de domínio falham em detectar o canal malicioso. **Exemplo:** ```bash # Artefato de detecção: incompatibilidade entre certificado TLS e SNI declarado # Investigação via openssl para inspecionar certificado do servidor suspeito: # openssl s_client -connect suspicious-host.com:443 -servername google.com 2>/dev/null \ # | openssl x509 -noout -subject -issuer # # Sinal de alerta: SNI aponta para google.com mas certificado é de outra CA # ou certificado autoassinado com CN="*.google.com" # # Detecção via Zeek: verificar campo ssl.server_name vs ssl.subject # cat ssl.log | zeek-cut id.orig_h id.resp_h server_name subject \ # | awk '$3 != "" && $4 != "" && $3 !~ $4' ``` ## Detecção **Fontes de dados:** Inspeção TLS (JA3/JA3S fingerprinting), logs de proxy com decodificação SSL, análise de certificados X.509, correlação de porta/protocolo, logs de DNS (para verificar se o IP corresponde ao domínio declarado no SNI), NGFW com inspeção profunda de pacotes. ```yaml title: TLS SNI and Certificaté Subject Mismatch (Protocol Impersonation) id: 3b9f7e1a-2d4c-4a8b-9e6f-1c5d7b8a0e2f status: experimental description: Detects TLS connections where the SNI hostname does not match the certificaté subject, indicating potential protocol or service impersonation for C2 logsource: category: network product: zeek detection: selection: event_type: ssl server_name|contains: - 'google.com' - 'microsoft.com' - 'amazonaws.com' - 'cloudfront.net' filter_valid: válidation_status: 'ok' resumed: false condition: selection and not filter_valid falsepositives: - Proxies corporativos com inspeção SSL que reemitem certificados - Appliances de load balancer com terminação TLS - Ambientes de teste com certificados internos level: high tags: - attack.command_and_control - attack.t1001.003 ``` ## Mitigação | Mitigação | Recomendação Prática | |-----------|---------------------| | [[m1031-network-intrusion-prevention\|M1031 - Network Intrusion Prevention]] | Implementar inspeção TLS com JA3/JA3S fingerprinting para identificar perfis de cliente anômalos; configurar alertas para certificados autoassinados ou de CAs não reconhecidas em destinos supostamente confiáveis; habilitar válidação de SNI vs Subject no proxy SSL | ## Threat Actors que Usam - [[g0032-lazarus-group|Lazarus Group]] - [[g0129-mustang-panda|Mustang Panda]] - [[g0126-higaisa|Higaisa]] ## Software Associado - [[s1120-framesting|FRAMESTING]] (malware) - [[s1227-starproxy|StarProxy]] (malware) - [[s1228-pubload|PUBLOAD]] (malware) - [[s0154-cobalt-strike|Cobalt Strike]] (ferramenta ofensiva) - [[badcall|BADCALL]] (malware) - [[keyboy|KeyBoy]] (malware) - [[s0586-taintedscribe|TAINTEDSCRIBE]] (malware) - [[s0239-bankshot|Bankshot]] (malware) - [[s0246-hardrain|HARDRAIN]] (malware) - [[s0022-uroburos|Uroburos]] (malware) --- *Fonte: [MITRE ATT&CK - T1001.003](https://attack.mitre.org/techniques/T1001/003)*