Durante muito tempo a ideia de censura de internet foi associada a bloqueios simples de websites. Domínios eram colocados em listas negras e resoluções DNS eram manipuladas para impedir o acesso. Esse modelo ainda existe, mas ele não representa mais o estado da arte. Infraestruturas modernas de controle informacional operam em níveis muito mais profundos da pilha de rede e combinam múltiplas técnicas de classificação de tráfego.
O exemplo mais estudado desse tipo de sistema é o que ficou conhecido como Great Firewall, componente central do aparato de controle digital da China. O nome sugere um único firewall nacional, mas a realidade é diferente. Trata-se de um conjunto de sistemas distribuídos ao longo da infraestrutura de rede do país. Equipamentos de inspeção são instalados em pontos estratégicos da topologia de internet: gateways internacionais, backbones de operadoras, pontos de troca de tráfego (IXPs) e infraestruturas de interconexão com provedores estrangeiros.
Essa distribuição permite que o sistema observe e classifique enormes volumes de tráfego em tempo real. O objetivo não é apenas bloquear sites específicos. O objetivo principal é identificar padrões de comunicação considerados suspeitos, principalmente aqueles associados a ferramentas de evasão de censura.
Para entender tecnicamente como esse sistema funciona, é necessário observar três camadas de análise que operam simultaneamente: filtragem de destino, inspeção profunda de pacotes e análise comportamental de fluxo.
Filtragem básica: IP, DNS e reset de conexão
O nível mais simples da censura ainda é baseado em destino. O sistema observa para onde uma conexão está sendo estabelecida e decide se ela deve ser permitida.
Isso ocorre principalmente através de três mecanismos.
O primeiro é o bloqueio de endereço IP. Se um servidor é classificado como proibido, o tráfego para aquele endereço é descartado.
O segundo é manipulação de DNS. Quando um cliente tenta resolver um domínio bloqueado, o resolver pode retornar um endereço inexistente ou incorreto. O usuário recebe um IP inválido e a conexão nunca ocorre.
O terceiro mecanismo envolve a injeção de pacotes TCP RST. Quando o firewall detecta uma tentativa de conexão com um destino proibido, ele envia pacotes de reset que encerram a sessão imediatamente.
Essas técnicas continuam sendo amplamente utilizadas, mas elas não resolvem o problema de ferramentas de evasão que utilizam domínios ou endereços dinâmicos. Nesse cenário, o sistema precisa analisar o comportamento do tráfego, não apenas o destino.
Deep Packet Inspection e a pilha de protocolos
É nesse ponto que entra o conceito de Deep Packet Inspection (DPI). O termo costuma ser interpretado como a capacidade de descriptografar conexões TLS, mas isso raramente acontece em sistemas de censura em larga escala. A inspeção profunda de pacotes normalmente trabalha com metadados de protocolo que permanecem visíveis mesmo quando o payload está criptografado.
Um sistema de DPI observa elementos de diferentes camadas da pilha de rede.
| Camada | Informação observável |
|---|---|
| L3 (IP) | endereços de origem e destino |
| L4 (TCP/UDP) | portas, flags, tamanho de sessão |
| L5 (TLS handshake) | parâmetros de negociação |
| L7 (metadata de protocolo) | campos não criptografados |
Quando um cliente inicia uma conexão HTTPS, o processo começa com um handshake TLS. Esse handshake contém uma quantidade significativa de informação em texto claro.
Um fluxo simplificado de conexão TLS pode ser representado assim:
Client -> TCP SYN -> TLS ClientHello -> ServerHello -> Encrypted session
O conteúdo da sessão é criptografado, mas o handshake inicial não é.
ClientHello e fingerprinting TLS
Durante a fase inicial da negociação TLS, o cliente envia uma mensagem chamada ClientHello. Esse pacote inclui diversos parâmetros utilizados para estabelecer a sessão criptografada.
Entre os campos presentes estão:
- versão TLS suportada
- lista de cipher suites
- extensões TLS
- parâmetros de curva elíptica
- algoritmos de assinatura
- campo Server Name Indication (SNI)
Um exemplo simplificado de ClientHello pode ser representado assim:
ClientHello
TLS Version: 1.3
Cipher Suites:
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
Extensions:
server_name
supported_groups
signature_algorithms
ALPN
A combinação desses elementos cria uma assinatura característica da implementação TLS utilizada pelo cliente. Navegadores modernos seguem padrões relativamente estáveis. Proxies e túneis customizados frequentemente apresentam padrões diferentes.
A partir dessas características surgiu o conceito de TLS fingerprinting, popularizado pela assinatura JA3. Esse fingerprint é gerado a partir da sequência e do conteúdo dos campos presentes no ClientHello.
Um firewall não precisa descriptografar a sessão para identificar um protocolo suspeito. Basta comparar o fingerprint observado com uma base de assinaturas conhecidas.
SNI e bloqueio de domínio em conexões TLS
Outro campo importante presente no handshake TLS é o Server Name Indication. Esse campo informa ao servidor qual domínio o cliente pretende acessar.
Por exemplo:
SNI: www.example.com
Como o SNI aparece em texto claro no handshake TLS tradicional, sistemas de censura podem bloquear conexões destinadas a determinados domínios mesmo quando o tráfego é criptografado.
Durante anos esse mecanismo foi amplamente utilizado pelo Great Firewall para bloquear serviços estrangeiros.
Análise comportamental de fluxo
Mesmo quando o handshake TLS parece legítimo, o comportamento do tráfego pode revelar a natureza da comunicação.
A navegação web comum apresenta características relativamente previsíveis. O usuário solicita um recurso, o servidor responde e a conexão entra em um período de inatividade até a próxima requisição.
Esse padrão produz bursts de tráfego curtos seguidos por intervalos de silêncio.
Túneis proxy e VPNs apresentam comportamento diferente. A comunicação costuma ser contínua e bidirecional. O fluxo de pacotes tende a ser constante e com pouca variabilidade temporal.
Sistemas de DPI analisam parâmetros como:
- distribuição de tamanho de pacotes
- tempo entre pacotes consecutivos
- volume de dados em cada direção
- entropia do payload
- duração da sessão
Com base nesses parâmetros é possível classificar tráfego com bastante precisão. Em implementações mais recentes, alguns sistemas utilizam modelos de aprendizado de máquina treinados para detectar padrões associados a proxies e VPNs.
Active probing
Outro mecanismo documentado no Great Firewall é o chamado active probing.
Quando o sistema detecta um fluxo suspeito, ele registra o endereço IP do servidor de destino. Em seguida, scanners automatizados tentam se conectar diretamente ao serviço.
Se o servidor responder de forma compatível com um proxy ou bridge, o endereço entra em uma lista de bloqueio.
Esse método foi amplamente observado contra bridges da rede Tor.
Tor e o transporte obfs4
Uma das respostas da comunidade de privacidade a esse tipo de censura foi o desenvolvimento de transportes pluggáveis para a rede Tor. Um dos mais conhecidos é o obfs4.
Documentação do projeto:
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/obfs4
O obfs4 atua como uma camada intermediária entre o cliente Tor e a bridge. Ele transforma o tráfego da rede Tor de forma que ele se pareça com dados aleatórios.
O protocolo utiliza um handshake autenticado baseado em chave pública. Sem conhecer a chave da bridge, o servidor simplesmente não responde. Isso impede que scanners automatizados confirmem a presença de um serviço Tor.
Além disso, o tráfego gerado não apresenta padrões facilmente reconhecíveis, o que dificulta a classificação estatística.
O ecossistema V2Ray
Outro conjunto de ferramentas bastante utilizado em ambientes de censura é V2Ray.
Site oficial:
https://www.v2fly.org
Repositório do projeto:
https://github.com/v2fly/v2ray-core
V2Ray é um framework de proxy modular que permite encapsular tráfego em diferentes protocolos e camadas de transporte.
Entre os protocolos suportados estão:
- VMess
- Shadowsocks
- HTTP
- SOCKS
O protocolo VMess foi desenvolvido para dificultar fingerprinting por DPI. Ele inclui autenticação e criptografia próprias e pode operar sobre múltiplos transportes.
Uma arquitetura comum utiliza:
VMess
↓
WebSocket
↓
TLS
↓
TCP 443
Para observadores externos, o tráfego se parece com uma aplicação web que utiliza WebSocket sobre HTTPS.
Xray-core e a evolução do ecossistema
Nos últimos anos, grande parte da comunidade técnica migrou para Xray-core, um fork que expandiu o ecossistema V2Ray.
Repositório do projeto:
https://github.com/XTLS/Xray-core
O Xray introduziu novos protocolos e transportes voltados especificamente para evasão de DPI.
Entre eles estão:
- VLESS
- XTLS
- Reality transport
O protocolo VLESS remove a camada de criptografia própria presente em VMess e delega a segurança da sessão ao TLS. Isso reduz overhead e diminui padrões detectáveis no handshake.
O transporte Reality tenta resolver um problema clássico da evasão de censura: TLS falso pode ser detectado por fingerprinting.
Nesse modelo, o handshake TLS se comporta como uma sessão legítima com servidores populares. O firewall observa uma negociação aparentemente normal.
Somente após autenticação interna o tráfego passa a ser tratado como túnel.
Uma corrida tecnológica permanente
Nenhuma dessas tecnologias representa uma solução definitiva. Sistemas de censura evoluem constantemente. Ferramentas de evasão também.
Firewalls nacionais já utilizam:
- fingerprinting TLS
- análise estatística de fluxo
- active probing
- classificação de tráfego baseada em machine learning
Ferramentas anti-censura respondem com:
- mimicry de protocolo
- padding de pacotes
- multiplexação de tráfego
- geração dinâmica de fingerprints TLS
Essa dinâmica cria uma corrida tecnológica permanente entre sistemas de controle e tecnologias de evasão.
Nos meus repos abaixo tem os tutoriais completos de instalação do V2Ray e Xray servers, com cliente no Kali Linux:
https://github.com/V1n1v131r4/Xray-Core-Ubuntu-Server—Kali-
https://github.com/V1n1v131r4/V2Ray-V2RayA-Ubuntu-Server—Kali-
Para quem trabalha com segurança de redes, inteligência ou OPSEC, o ponto mais importante não está apenas na criptografia empregada. A criptografia protege o conteúdo da comunicação. O comportamento observável do tráfego continua sendo a principal fonte de informação para quem tenta identificar o que realmente está acontecendo em uma rede.

