Como burlar um proxy corporativo

Publicado por Luiz Vieira em 17/06/2013

[ Hits: 79.094 ]

Blog: http://hackproofing.blogspot.com/

 


Como burlar um proxy corporativo



Muita gente, hoje em dia, trabalha em empresas que utilizam proxys corporativos para filtrar aquilo que o funcionário acessa em seu horário de trabalho. Acho isso justo e necessário muitas vezes.

No entanto, para um pentester que esteja realizando um teste do tipo "gray box", muitas vezes é necessário acessar a Web para baixar alguma ferramenta, ou código malicioso para realizar uma escalada de privilégios na máquina em que está trabalhando.

É justamente para essas pessoas que direciono essa dica. Mas, se algum funcionário utilizar essa dica para burlar os controles impostos pelo seu empregador, aí vai outra dica: para pegá-lo, existe a rastreabilidade, e uma série de ferramentas e métodos para descobrir que esses controles foram burlados.

Isso, inclusive, é coisa fácil de saber para um perito forense. :-)

A ideia aqui, é utilizar algumas ferramentas do tipo Unix-like para fazer um bypass em proxys Windows, que utilizam autenticação NTLM.

As seguintes ferramentas serão utilizadas:
  • cntlm :: é um proxy que permite que nossas ferramentas atravessem o proxy Windows, realizando a autenticação NTLM. Ele fica "escutando" (listening) no localhost e funciona como um proxy HTTP comum.
  • corkscrew :: para tunelar o tráfego SSH sobre proxys HTTP.
  • Um cliente SSH para abrir um SOCKS proxy no localhost e um servidor SSH ouvindo na 443.
  • Um browser que suporte SOCKS proxy (ex.: Firefox)

O tráfego vai fluir na seguinte direção:

Firefox → SSH client → corkscrew → CNTLM → Corporate Proxy → SSH server → Internet

Não vou entrar no mérito sobre como configurar cada uma dessas ferramentas, pois é coisa simples que se encontra por aí na Net.

A ideia é mostrar quais recursos usar para fazer esse bypass. Até porque, se um pentester não souber como configurar isso, é melhor desistir da profissão. :-)

See ya, folks!

Outras dicas deste autor

Curso gratuito online de Python

Slides da palestra: Segurança nos Ciclos de Desenvolvimento de Software

Slides da Oficina "Assembly para Linux"

Aprendendo Python

Script Ubuntu Perfeito para Ubuntu 9.04 Jaunty Jackalope

Leitura recomendada

fwbuilder - interface gráfica para iptables

Recebendo um e-mail a cada login no servidor

BlackArch Linux - Usando um repositório para Pentest

IPCop Firewall de rede grátis

Portas do Samba no IPTables

  

Comentários
[1] Comentário enviado por hugoeustaquio em 17/06/2013 - 10:45h

Boa dica.
Pra quem ficou curioso, pode ler no endereço abaixo sobre como criar um tunelamento ssh (primeira dica)
http://www.howtogeek.com/114812/5-cool-things-you-can-do-with-an-ssh-server/

Meu provedor gratuito de shell favorito é o devio.us (sim, você pode usá-lo para acessar a web, pede-se somente que não abuse - principalmente do youtube)

Pra finalidades simples, também vale lembrar de web proxy, tipo o hidemyass (se você não estiver abaixo de um proxy configurado tipo "lista branca")

Mas vim comentar aqui apenas uma pequena experiência pela qual passei algum tempo atrás. Certa vez, eu trabalhava numa empresa (e nem era uma empresa tão pequena assim) e notei que era proibido baixar arquivos "zip", "tar", "tar.gz", "exe" e etc..

Como eram somente esses arquivos que davam erros, eu testei o seguinte: coloquei um parâmetro qualquer no final da url. Onde terminava com "arquivo.exe" eu colocava "arquivo.exe?qq_coisa=0" e funcionava. Por questão de bom humor, passei a usar "arquivo.exe?1+1=2" e dei essa dica pros colegas. Apenas pela brincadeira de fingir que esses parâmetros eram interpretados de forma booleana :P (sim, meus colegas acreditaram huashusahusahusa)

Configuradores de proxy, atenção na hora de escrever suas acl's! Final de URL não é tipo de arquivo!!!

Abraço, e valeu a dica!

[2] Comentário enviado por danniel-lara em 17/06/2013 - 11:09h

Boa a Dica

[3] Comentário enviado por pakitao em 19/06/2013 - 18:21h

Muito boa a dica.
Essa dos parâmetros no final da URL eu já tinha percebido por acaso há alguns anos. Inclusive, ajustei minhas ACLs para impedir isso.

[4] Comentário enviado por phpmenezes em 06/06/2014 - 00:54h

Eu consigo fazer isso em uma máquina fora do domínio, portanto sem autenticar meu usuário do AD? Ou tenho que estar no domínio e logado com meu usuario?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts