Proxychains e Squid Proxy

1

Estou trabalhando com proxychains (3.1 e 4). Eu tenho uma VM que está executando o Squid Proxy 3.1.19. Eu configurei corretamente os proxychains para usar o Squid Proxy, ou seja. 'squidip squidip http'. Proxychains funciona como esperado em todas as condições, exceto em uma, se eu tentar conectar a uma porta bloqueada de redes externas por meio do proxy por meio de proxychains, ela retornará "conexão recusada".

Nesse caso, a VM tem a porta 22 aberta a todas as redes e a porta 80 aberta apenas ao host. Eu posso conectar-me à porta 80 configurando o Squid Proxy no meu navegador da Web ou usando a opção de proxy de outras ferramentas, como o Nikto. Eu posso rotear o tráfego via proxychains para a porta 22, mas não a porta 80.

Eu não acredito que o problema seja com o Squid Proxy, ou eu não seria capaz de se conectar a portas internas de um navegador da web ou outra ferramenta, é apenas proxychains.

Proxychains está funcionando corretamente para todas as outras intenções, garanti que o tráfego flua pelo Squid Proxy até o destino. No entanto, ainda não se conectará a portas que ainda não são acessíveis externamente.

Embora eu agora conheça a porta que está aberta neste caso e outras maneiras de se conectar a ela, eu quero poder usar o nmap para escanear por meio de proxychains e descobrir que a porta 80 está aberta.

Alguém já viu esse problema antes? O que poderia estar causando proxychains para agir assim?

Edit: descobri que a configuração nmap --proxies se comporta como proxychains. Ele roteia através do proxy HTTP, mas apenas lista portas que são acessíveis externamente como abertas. Ainda estou confuso porque Nikto e Metasploit podem encontrar a porta interna sem problemas.

Para aqueles que querem testá-lo, esta VM está disponível no link , mas eu me deparei com esse problema antes em outros hosts.

    
por Alex 24.10.2016 / 19:31

1 resposta

0

Para qualquer outra pessoa que chegue a isso, descobri. Proxychains usa o CONNECT para enviar seus pedidos ao Squid Proxy. O Squid Proxy está permitindo que qualquer verbo passe através de portas que possam ser acessadas externamente, mas apenas permitindo que certos verbos, como GET e HEAD, sejam usados para conectar-se a portas bloqueadas externamente. O verbo CONNECT recebe um '403 proibido' do Squid Proxy, o pedido nunca é passado para a porta que estou tentando acessar.

Para contornar isso, estou escrevendo meu próprio scanner de porta no bash que usa o netcat para enviar solicitações HEAD através do proxy.

    
por 25.10.2016 / 15:56