O que é um proxy web? Entenda proxies de navegador nos logs
Um mergulho técnico para engenheiros sobre proxies web, com foco em implementações baseadas no navegador e em como elas aparecem nos logs de sistemas. Saiba identificar os principais sinais.
Proxies web baseados no navegador continuam sendo um desafio recorrente para a segurança de redes. Embora muita gente associe proxies a infraestruturas dedicadas e de grande escala, uma parte relevante desse tráfego vem de extensões de navegador, serviços web voltados ao usuário final ou até configurações locais. Entender como esses acessos aparecem nos logs é essencial para qualquer engenheiro envolvido em detecção de fraude, prevenção de abuso ou inteligência de ameaças.
Este artigo se concentra no lado prático da identificação de proxies baseados no navegador a partir de dados de log, destacando os sinais mais úteis e também suas limitações.
What is a Web Proxy?
Em essência, um proxy web funciona como um intermediário para requisições feitas por clientes que buscam recursos em outros servidores. Em vez de se conectar diretamente ao site de destino, o cliente envia a requisição ao servidor proxy, que então a encaminha ao site em nome do cliente. A resposta do site volta pelo proxy antes de chegar ao usuário.
Esse processo pode atender a diferentes objetivos:
- Anonimato/Privacidade: Ocultar o endereço IP original do cliente.
- Controle de Acesso: Contornar restrições geográficas ou firewalls corporativos.
- Cache: Melhorar a performance ao servir conteúdo armazenado em cache.
- Registro/Monitoramento: Interceptar e registrar tráfego para análise.
- Segurança: Filtrar conteúdo malicioso ou aplicar políticas de acesso.
Browser-Based vs. Dedicated Proxies
Embora a função básica seja a mesma, proxies baseados no navegador se diferenciam de uma infraestrutura de proxy dedicada pela forma de implantação e pelo rastro operacional que deixam. Proxies dedicados costumam envolver software específico rodando em servidores definidos, administrados por uma pessoa ou organização para um uso consistente, como um proxy corporativo de saída ou um serviço de VPN. Em geral, usam protocolos conhecidos, como SOCKS ou HTTP/HTTPS, e podem vir de grandes provedores de hospedagem.
Já os proxies baseados no navegador normalmente aparecem como:
- Extensões/Add-ons: Pequenos componentes de software instalados diretamente em navegadores como Chrome, Firefox, Edge e outros. Eles modificam as requisições de rede no lado do cliente para roteá-las por um servidor proxy operado pelo fornecedor da extensão.
- Serviços web: Sites que oferecem funcionalidade de proxy diretamente no navegador, por exemplo quando o usuário digita uma URL em um site de proxy para navegar anonimamente. Nesse caso, o servidor proxy é o próprio servidor web que hospeda o serviço.
- Software de proxy local: Aplicações executadas na máquina do usuário que redirecionam o tráfego do navegador para um proxy local e, depois, para um servidor proxy upstream. Isso pode ocorrer com alguns bloqueadores de anúncios, ferramentas de privacidade ou ferramentas especializadas de teste.
A diferença mais importante para fins de detecção é que proxies baseados no navegador muitas vezes usam uma infraestrutura diversa, às vezes efêmera, e seus padrões de uso podem ser menos previsíveis do que os de serviços dedicados.
Surfacing Browser Proxies in Logs
Identificar o uso de proxies baseados no navegador exige analisar diferentes campos nos logs do servidor web, da CDN e da aplicação. Nenhum campo isolado oferece uma resposta definitiva. O que costuma funcionar é a correlação de vários sinais fracos que, juntos, apontam para atividade de proxy.
1. IP Address Anomalies
O sinal mais direto é o próprio endereço IP de conexão. Se uma requisição parte de um IP já associado a serviços de proxy, isso é um forte indício. No caso de proxies baseados no navegador, isso geralmente envolve:
- IP de provedor de hospedagem/datacenter: Muitos serviços de proxy gratuitos ou de baixo custo operam em provedores de hospedagem comuns. Um IP pertencente a grandes nuvens, como AWS, GCP, Azure, DigitalOcean, OVH, ou a datacenters menos conhecidos, é suspeito quando não combina com o padrão esperado de tráfego dos usuários. Por exemplo: um IP em faixa de hosting acessando um site de varejo a partir de uma região onde sua empresa não atua é um sinal de alerta.
- Nó de saída TOR: O endereço IP aparece listado como um nó de saída TOR conhecido. Ferramentas baseadas no navegador conseguem configurar facilmente o tráfego para passar pela rede TOR.
- IP de VPN: Embora muitas vezes seja tratado como uma categoria separada, várias extensões de navegador oferecem funcionalidades semelhantes às de uma VPN, roteando o tráfego por provedores comerciais de VPN.
- Blacklists de proxy: O IP está presente em listas comerciais ou open source voltadas especificamente à identificação de proxies.
Limitações: Um usuário legítimo pode estar usando VPN por privacidade, ou o provedor de internet dele pode rotear tráfego por uma infraestrutura parecida com datacenter. Contexto é fundamental.
2. HTTP Headers
Headers HTTP carregam muita informação. Parte dela pode ser manipulada, mas alguns campos frequentemente permanecem intactos ou acabam revelando a presença de um proxy.
- `X-Forwarded-For` / `X-Real-IP`: Esses headers normalmente são adicionados por proxies para preservar o endereço IP original do cliente. Se a sua aplicação espera enxergar o IP direto do cliente, mas recebe um IP de proxy em
REMOTE_ADDRe um IP totalmente diferente, possivelmente residencial, emX-Forwarded-For, há um forte indício de uso de proxy. Vale lembrar que esses headers podem ser falsificados por um atacante mais sofisticado.
Example:* REMOTE_ADDR = 192.0.2.1 (IP do proxy), X-Forwarded-For = 203.0.113.10 (possível IP original do cliente).
- Header `Via`: Alguns proxies, especialmente os mais antigos ou transparentes, adicionam um header
Viaindicando o protocolo e o hostname/IP dos servidores proxy atravessados. É menos comum em proxies modernos baseados no navegador, mas ainda aparece.
Example:* Via: 1.1 proxy.example.com
- `Proxy-Connection` / `Proxy-Authorization`: A presença desses headers indica que o cliente configurou explicitamente o navegador para usar um proxy.
Proxy-Authorization, em particular, sugere um proxy autenticado, algo comum em ambientes corporativos, mas também usado por serviços pagos de proxy. - Inconsistências no User-Agent: Algumas extensões de navegador podem alterar sutilmente a string de
User-Agent, ou ela pode não bater com outras características observadas. Um exemplo seria umUser-Agentmobile vindo de um IP de datacenter com resoluções de tela típicas de desktop.
Limitações: Headers podem ser modificados ou removidos. X-Forwarded-For pode conter múltiplos IPs ou ser completamente fabricado.
3. Connection Characteristics
Além de IP e headers, a forma como a conexão é estabelecida e se comporta também pode oferecer pistas.
- Fingerprinting TLS/SSL (JA3/JA4): O handshake TLS contém padrões específicos relacionados ao navegador do cliente, ao sistema operacional e à pilha de rede. Um navegador se conectando por meio de um proxy pode apresentar um fingerprint TLS diferente, por exemplo mais característico de um componente server-side ou de uma biblioteca genérica, em vez de uma conexão direta de navegador.
- Suporte a HTTP/2 ou HTTP/3: Proxies podem fazer downgrade ou upgrade de versões HTTP, criando discrepâncias entre as capacidades anunciadas pelo cliente e a versão de protocolo efetivamente usada na conexão.
- Round Trip Time (RTT) / Latência: Embora não seja um indicador definitivo, uma latência incomumente alta ou inconsistente para determinada região geográfica pode sugerir uma cadeia de proxy com múltiplos saltos.
Limitações: Fingerprinting TLS é uma técnica avançada e pode ser burlada. O RTT varia bastante conforme as condições da rede.
Leveraging IP Intelligence
Correlacionar manualmente esses sinais em milhões de entradas de log não escala. É aqui que APIs especializadas de inteligência de IP se tornam indispensáveis. Serviços como a Guarda (guarda.net) automatizam a análise desses e de muitos outros sinais para entregar uma avaliação consolidada de risco.
Um serviço de inteligência de IP normalmente oferece:
- Detecção de proxy/VPN/TOR: Classificação direta de um IP como proxy conhecido, VPN ou nó de saída TOR, com base em monitoramento contínuo e listas especializadas.
- Dados de ASN/organização: Identificação do Autonomous System Number e da organização responsável. IPs pertencentes a provedores de hospedagem, por exemplo ASNs com nomes contendo "HOSTING", "CLOUD" ou "DATACENTER", costumam ser marcados como suspeitos quando usados por usuários finais.
- Hostname rDNS: Registros de DNS reverso às vezes expõem infraestrutura de proxy, como
proxy.someprovider.net. Embora possam ser manipulados com facilidade, são mais um ponto de dados. - Score de risco: Uma pontuação numérica consolidada que representa a probabilidade de um IP ser malicioso ou estar associado a abuso. Esse score combina fatores como padrões de ataque observados, presença em blacklists e tipo de infraestrutura.
Ao integrar uma API desse tipo, você enriquece seus logs com inteligência em tempo real. Quando uma conexão de entrada mostra um REMOTE_ADDR identificado como IP de datacenter com score de risco alto, e o X-Forwarded-For apresenta outro IP, possivelmente residencial, você tem um forte indício de uso de proxy. A partir daí, pode acionar autenticação adicional, bloquear a requisição ou simplesmente registrar o evento para investigação posterior.
Conclusion
Identificar proxies baseados no navegador em logs é uma tarefa multifacetada, que exige vigilância, domínio de detalhes do HTTP e uso de inteligência externa. Nenhum sinal isolado é infalível, mas uma estratégia robusta agrega múltiplos indicadores, desde a origem do IP e os headers HTTP até as características da conexão. Para engenheiros responsáveis por aplicações web, reconhecer esses padrões é essencial para preservar a segurança e a integridade dos dados.
Para verificar seu próprio IP ou testar alguns desses conceitos, acesse a ferramenta gratuita de consulta de IP em guarda.net.
