Compreendendo firewalls baseados em IP e suas limitações
Firewalls baseados em IP, essas veneráveis sentinelas da segurança de rede, permitem ou negam tráfego com base no endereço IP de origem ou de destino. No entanto, seu estoicismo não é isento de falhas. Um firewall configurado para permitir apenas solicitações de intervalos de IP permitidos pode ser contornado se uma solicitação parecer originar-se de dentro desse enclave confiável. Essa é a essência do "truque do proxy" — um método elegante e subversivo, que lembra as intrigas magistrais de Dumas.
O truque do proxy: ignorando firewalls baseados em IP com relés internos
Em sua essência, o truque do proxy utiliza uma máquina intermediária — normalmente dentro do alcance confiável do firewall — para retransmitir o tráfego. Ao orquestrar cuidadosamente as solicitações por meio desse proxy, um agente externo pode se passar por um agente interno, passando despercebido pela fachada rígida do firewall.
Tipos de proxies usados
Tipo de proxy | Descrição | Caso de uso típico | Complexidade | Furtividade |
---|---|---|---|---|
Túnel SSH | Encaminha com segurança portas locais por meio de SSH | Acesso administrativo, testes | Baixo | Alto |
CONEXÃO HTTP | Utiliza o método HTTP CONNECT para tunelamento de tráfego TCP arbitrário | Acesso à Web e API | Médio | Médio |
SOCKS Proxy | Retransmissão genérica para conexões TCP, geralmente via SSH ou servidor proxy dedicado | Navegação na web, exfiltração de dados | Baixo | Alto |
Proxy reverso | Encaminha o tráfego de clientes externos para serviços internos | Acesso a servidores web internos | Alto | Médio |
Passo a passo: implementando o truque do proxy com tunelamento SSH
Suponha que você tenha credenciais para um jump box dentro do firewall.
- Estabelecer um túnel SSH
bater
ssh -L 8080:internal.service.local:80 usuá[email protected]
Este comando vincula a porta 8080 da sua máquina local à porta 80 do serviço interno local
, retransmitido via jumpbox.corp.com
.
- Acesse o Serviço Interno
No seu navegador ou com curl:
bater
enrolar http://localhost:8080/
O pedido parece originar-se de jumpbox.corp.com
, no qual o firewall confia.
Recurso: Tutorial de encaminhamento de porta SSH
Criando proxies HTTP CONNECT com socat
e ncat
Se o firewall permitir HTTP/HTTPS de saída, o método HTTP CONNECT é uma ferramenta excelente. É possível implantar um proxy leve em um host confiável:
- Implantar um proxy com Socat
No host interno:
bater
socat TCP-LISTEN:3128,reuseaddr,fork TCP:target.internal:80
- Configure seu cliente
Aponte seu navegador ou ferramenta para usar o host interno como um proxy HTTP (porta 3128).
Referência: Documentação Socat
Proxies SOCKS: o recurso mais sutil do SSH
O encaminhamento dinâmico do SSH pode transmutar sua sessão em um proxy SOCKS:
ssh -D 1080 usuá[email protected]
Configure seu aplicativo para rotear o tráfego por meio de host local:1080
. O tráfego, depois de ser criptografado e transportado pela jump box, emerge dentro do santuário da rede interna.
Recurso: Guia do Proxy OpenSSH SOCKS
Proxies reversos: virando o firewall de dentro para fora
Para necessidades mais persistentes ou complexas, um proxy reverso como ngrok ou fibra de vidro reforçado (FRP) pode ser instalado em um host interno confiável. O proxy reverso estabelece um túnel de saída para um servidor externo e, em seguida, retransmite as conexões de entrada de volta para a rede interna — assim, a direcionalidade do firewall é subvertida.
Exemplo de configuração frp (no host interno)
[comum] server_addr = external.server.com server_port = 7000 [web] tipo = http local_port = 80 custom_domains = myinternal.example.com
Comparação: Abordagens de proxy para evasão de firewall
Método | Configuração necessária no host interno | Controle externo | Criptografia | Evasão de Auditoria | Adequado para |
---|---|---|---|---|---|
Túnel SSH | Servidor SSH | Sim | Sim | Moderado | Acesso manual ocasional |
CONEXÃO HTTP | Proxy HTTP (por exemplo, socat) | Sim | Não | Baixo | Tráfego Web/API |
SOCKS Proxy | Servidor SSH | Sim | Sim | Alto | Web, ferramentas CLI, automação |
Proxy reverso | Software personalizado (ngrok, frp) | Sim | Varia | Baixo | Acesso persistente à web |
Contramedidas práticas
- Segmentação de rede: Restrinja o acesso dos hosts proxy internos sempre que possível.
- Filtragem de saída: Desabilite ou limite conexões de saída de hosts internos.
- Detecção de proxy: Monitore processos de proxy anômalos (por exemplo,
socat
,ncat
, SSH com sinalizadores -L/-D). - Modelos de Confiança Zero: Ir além da confiança baseada em PI; empregar TLS mútuo, proxies reversos autenticados ou controles de acesso por usuário.
Leitura adicional
- A Arte do Pivô: Pós-Exploração com Proxies
- Tunelamento SSH explicado
- Padrões e segurança de proxy reverso
- FRP – Proxy Reverso Rápido
Exemplo: Fluxo de trabalho de exploração completa
Suponha que um aplicativo web seja acessível apenas a partir de um intervalo de IP interno. A sequência a seguir ilustra uma exploração típica:
- Comprometa um host dentro do firewall (jump box).
- Estabelecer um proxy SSH SOCKS:
bater
ssh -D 1080 [email protected]
- Encaminhe o tráfego do navegador ou da ferramenta através do proxy.
- Acesse o aplicativo web interno por meio do proxy local SOCKS.
- Opcional: implante um proxy reverso (frp, ngrok) para acesso persistente.
Tabela de resumo: etapas e ferramentas práticas
Etapa | Exemplo de ferramenta/comando | Propósito |
---|---|---|
Encaminhamento de porta local (SSH) | ssh -L 8080:target:80 usuário@jumpbox |
Acesso a um único serviço interno |
Proxy dinâmico SOCKS (SSH) | ssh -D 1080 usuário@jumpbox |
Tráfego arbitrário de proxy |
Proxy HTTP CONNECT (socat/ncat) | socat TCP-LISTEN:3128,fork TCP:alvo:80 |
Proxy Web/API |
Proxy reverso (frp) | Veja a configuração do frp acima | Acesso persistente de externo para interno |
No âmbito da segurança de redes, o truque do proxy é uma prova da engenhosidade daqueles que, como o Conde de Monte Cristo, buscam passagem onde nenhuma é garantida. A lição para os defensores: não confiem no endereço IP, pois ele é apenas uma máscara que pode ser usada por amigos ou inimigos.
Comentários (0)
Ainda não há comentários aqui, você pode ser o primeiro!