# 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)*