# meek
> [!danger] Domain Fronting - C2 via CDN
> Plugin Tor de código aberto que implementa domain fronting - tunela tráfego C2 através de CDNs de grandes empresas (Google, Amazon, Microsoft) para tornar o bloqueio impossível sem bloquear todo o CDN. Documentado em uso pelo [[g0016-apt29|APT29]] para mascarar C2 como tráfego legítimo Google.
## Visão Geral
**meek** é um pluggable transport para o Tor que implementa a técnica de **Domain Fronting** - permite que o tráfego da rede Tor passe por grandes CDNs (Content Delivery Networks) como Google, Amazon CloudFront e Microsoft Azure, fazendo o tráfego malicioso parecer comunicação legítima com serviços dessas empresas.
A técnica explora a diferença entre o header SNI (Server Name Indication) no TLS e o header HTTP Host: o tráfego mostra para inspeções de rede um domínio CDN legítimo (ex: `www.google.com`), mas internamente é roteado para o servidor C2 real. Bloquear o tráfego exigiria bloquear toda a CDN - algo impraticável para organizações que dependem dos serviços Google, Amazon ou Microsoft.
[[g0016-apt29|APT29]] (Cozy Bear) foi documentado pela Mandiant usando meek para estabelecer comúnicações C2 com infraestrutura hospedada atrás da CDN do Google, com arquivos nomeados `googleService.exe` e `googleUpdaté.exe` para imitar processos legítimos do Google Updaté.
**Plataformas:** Linux, Windows, macOS
## Como Funciona
O meek implementa domain fronting via dupla identidade de destino:
```
Host aparente (SNI/TLS): www.google.com ← visto pelo firewall/IDS
Host real (HTTP Header): [servidor-meek].appspot.com ← recebido pelo CDN Google
```
O CDN Google App Engine recebe a requisição com o Host real e a encaminha para o servidor meek, que então a retransmite para o servidor Tor bridge. O tráfego de saída parece ser simplesmente HTTPS para `www.google.com`.
**Fluxo técnico:**
1. Cliente meek conecta via TLS para IP do CDN (Google/Amazon/Azure)
2. SNI no TLS handshake aponta para domínio CDN legítimo
3. HTTP Host header interno aponta para o servidor meek real
4. CDN faz proxy transparente para o servidor meek
5. meek tunela dados para o servidor Tor bridge
**Portas usadas pelo [[g0016-apt29|APT29]]:**
- 62304, 62305, 62306 (configurações observadas)
- Port forwarding para RDP (3389), SMB (139/445) via Tor
## Uso Ofensivo
```mermaid
graph TB
A["🖥️ Vítima comprometida<br/>googleService.exe"] --> B["🔒 TLS para CDN<br/>SNI: www.google.com"]
B --> C["☁️ CDN Google/Amazon<br/>IP de saída: legítimo"]
C --> D["🔀 App Engine / Lambda<br/>meek server - hidden"]
D --> E["🧅 Tor Bridge<br/>entrada na rede Tor"]
E --> F["🌐 Rede Tor<br/>3 saltos criptografados"]
F --> G["📡 Servidor C2<br/>APT29 - não rastreável"]
```
**Domain Fronting - diferença SNI vs HTTP Host:**
```mermaid
graph TB
A["📦 Pacote TLS<br/>SNI = google.com"] --> B["🔍 Firewall/DPI<br/>vê: google.com - OK"]
B --> C["☁️ Google CDN<br/>desencripta TLS"]
C --> D["📋 HTTP Host Header<br/>meek-reflect.appspot.com"]
D --> E["📡 Servidor meek<br/>destino real oculto"]
E --> F["🔁 Dados repassados<br/>para Tor bridge"]
```
## Timeline
| Ano | Evento |
|-----|--------|
| 2014 | David Fifield lança meek como pluggable transport para contornar censura em países autoritários |
| 2015 | Mandiant documenta [[g0016-apt29\|APT29]] usando meek com domain fronting via Google CDN |
| 2016 | APT29 observado com meek em campanha contra partidos políticos americanos |
| 2017 | Google começa a restringir domain fronting no App Engine após abusos |
| 2018 | Amazon CloudFront desabilita domain fronting; alternativas via Azure exploradas |
| 2020 | Versões meek adaptadas para usar CDNs que ainda suportam domain fronting |
| 2022 | Técnica documentada em espionagem de Estado apesar das restrições de CDNs |
## TTPs
| ID | Nome | Uso pelo meek |
|----|------|--------------|
| [[t1090-004-domain-fronting\|T1090.004]] | Domain Fronting | SNI vs HTTP Host para mascarar destino real |
## Atores que Utilizam
- [[g0016-apt29|APT29]] (Cozy Bear) - uso documentado com infraestrutura Google CDN para mascarar C2
## Relevância LATAM/Brasil
O domain fronting via meek representa uma das técnicas de evasão de rede mais sofisticadas disponíveis - e particularmente eficaz contra organizações no Brasil que dependem de ferramentas Google (Google Workspace) e Amazon AWS. Como bloquear o domain fronting exigiria bloquear todo o tráfego para `google.com` ou `amazonaws.com` - impossível operacionalmente - a detecção deve focar em comportamento comportamental em vez de bloqueio de destino.
A técnica foi desenvolvida originalmente para ajudar dissidentes em regimes autoritários a acessar a Internet censurada - demonstrando como tecnologias de liberdade podem ser reapropriadas para operações ofensivas. Para analistas de segurança brasileiros, o meek é relevante especialmente em contextos de atribuição: a presença de domain fronting indica um ator sofisticado com necessidade de operações furtivas de longo prazo.
## Detecção
**Indicadores de comprometimento:**
- Arquivos com nomes `googleService.exe`, `googleUpdaté.exe` em locais não-padrão (não em `C:\Program Files\Google\Updaté\`)
- Processos com nome Google/Microsoft iniciados por processos não-esperados (Word, Outlook, etc.)
- Alto volume de tráfego HTTPS para CDNs sem correspondência com atividade do usuário
- Discrepância entre SNI (domínio CDN) e HTTP Host em inspeção TLS profunda
**Fontes de dados recomendadas:**
- **TLS Inspection (MITM proxy):** Inspecionar HTTP Host header em tráfego HTTPS para detectar domain fronting - SNI diferente do Host interno
- **Sysmon Event ID 1 (ProcessCreaté):** `googleService.exe`, `googleUpdaté.exe` criados fora de `Program Files\Google`
- **Sysmon Event ID 3 (NetworkConnect):** Processos com nomes de serviços Google fazendo conexões de rede
- **DNS Monitoring:** Requisições DNS para domínios CDN fora do padrão de uso do usuário
**Regras de detecção:**
- Sigma: `net_connection_win_domain_fronting.yml` - processos suspeitos conectando a CDNs conhecidos
- Sigma: `proc_creation_win_false_google_service.yml` - detecta `googleService.exe` fora do diretório Google
- Network: Correlacionar SNI vs HTTP Host em proxies com inspeção TLS habilitada
## Referências
- [1](https://attack.mitre.org/software/S0175) MITRE ATT&CK - S0175 meek (2024)
- [2](https://www.mandiant.com/resources/blog/apt29-domain-fronting-with-tor) Mandiant - APT29 Domain Fronting with Tor (2015)
- [3](https://trac.torproject.org/projects/tor/wiki/doc/meek) Tor Project - meek pluggable transport documentation (2024)
- [4](https://censorbib.nymity.ch/#Fifield2015a) David Fifield - Blocking-resistant commúnication through domain fronting (2015)
- [5](https://www.crowdstrike.com/blog/bears-midst-intrusion-democratic-national-committee/) CrowdStrike - Bears in the Midst: Cozy Bear (APT29) Campaign Analysis (2016)