Roteamento do Tráfego Gobuster Através de um Proxy

Beginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá uma técnica fundamental em testes de penetração de aplicações web: rotear o tráfego do Gobuster através de um proxy web. O Gobuster é uma ferramenta poderosa para brute-forcing de diretórios e arquivos, brute-forcing de subdomínios DNS e enumeração de buckets S3. Ao rotear seu tráfego através de um proxy como o Burp Suite ou OWASP ZAP, você ganha a capacidade de inspecionar, modificar e analisar as requisições e respostas HTTP geradas pelo Gobuster. Essa visibilidade é inestimável para entender como as aplicações web se comportam e para identificar vulnerabilidades potenciais.

Este laboratório irá guiá-lo através da configuração de um proxy, configuração do Gobuster para usá-lo, execução de um scan e observação do tráfego dentro do proxy.

Iniciar um Proxy Web como Burp Suite ou OWASP ZAP

Nesta etapa, você iniciará uma aplicação de proxy web. Para este laboratório, usaremos o OWASP ZAP, que já vem pré-instalado no ambiente LabEx. O OWASP ZAP fornece uma interface gráfica para interceptar e analisar o tráfego web.

Primeiro, abra uma nova janela de terminal se você ainda não tiver uma aberta. Em seguida, inicie o OWASP ZAP.

/opt/zaproxy/zap.sh &

Após o lançamento, o OWASP ZAP será iniciado. Você poderá ver um prompt sobre persistir a sessão do ZAP. Para este laboratório, você pode escolher "No, thanks" (Não, obrigado) e clicar em "Start" (Iniciar).

Assim que o ZAP estiver em execução, você deverá ver sua interface principal. Isso indica que a aplicação proxy está pronta para ser configurada.

Configurar o Proxy para Escutar em uma Porta Específica

Nesta etapa, você configurará o OWASP ZAP para escutar em um endereço IP e porta específicos. Por padrão, o ZAP geralmente escuta em 127.0.0.1:8080. Confirmaremos essa configuração.

No OWASP ZAP:

  1. Vá para Tools (Ferramentas) -> Options... (Opções...) (ou File (Arquivo) -> Options... (Opções...) dependendo da versão do ZAP).
  2. Na caixa de diálogo de Opções, navegue até Local Proxies (Proxies Locais) na seção Network (Rede).
  3. Verifique se o endereço é 127.0.0.1 e a porta é 8080. Se for diferente, você pode modificá-lo aqui, mas para este laboratório, assumiremos 127.0.0.1:8080.
  4. Clique em OK para fechar a caixa de diálogo de Opções.

Esta configuração garante que o ZAP esteja escutando por conexões de entrada no endereço e porta especificados, pronto para interceptar o tráfego.

Usar a Flag -p no Gobuster para Especificar a URL do Proxy

Nesta etapa, você aprenderá como instruir o Gobuster a rotear seu tráfego através do proxy que você acabou de configurar. O Gobuster fornece a flag -p (ou --proxy) para este propósito, permitindo que você especifique a URL do proxy.

O formato para a URL do proxy é tipicamente http://<IP_ADDRESS>:<PORT>. Como nosso proxy ZAP está escutando em 127.0.0.1:8080, a URL do proxy será http://127.0.0.1:8080.

Prepararemos um comando Gobuster que inclui essa configuração de proxy. Usaremos um alvo simples para demonstração, por exemplo, http://example.com.

echo "gobuster dir -u http://example.com -w /usr/share/wordlists/dirb/common.txt -p http://127.0.0.1:8080" > ~/project/gobuster_command.sh
chmod +x ~/project/gobuster_command.sh

Este comando cria um script gobuster_command.sh no seu diretório ~/project que contém o comando Gobuster com a flag de proxy. Este script será executado na próxima etapa.

Executar um Scan com Gobuster

Nesta etapa, você executará o scan com Gobuster usando o comando preparado na etapa anterior. Isso iniciará o processo de brute-forcing de diretórios, e todo o seu tráfego HTTP será roteado através do OWASP ZAP.

Abra um novo terminal ou use o seu existente e execute o script:

~/project/gobuster_command.sh

Você verá a saída do Gobuster no terminal, mostrando os diretórios e arquivos que ele descobre. Enquanto o Gobuster estiver em execução, ele estará enviando requisições através do ZAP. O scan pode levar alguns momentos para ser concluído, dependendo do tamanho da wordlist e da responsividade do alvo. Para example.com, deve ser relativamente rápido, pois é um alvo simples.

/usr/bin/gobuster: line 1: syntax error near unexpected token `newline'
/usr/bin/gobuster: line 1: `#!/bin/bash'

Nota: A saída acima é um exemplo. Sua saída real pode variar ligeiramente.

Observar o Tráfego do Gobuster no Histórico do Proxy

Nesta etapa final, você observará o tráfego HTTP gerado pelo Gobuster dentro do OWASP ZAP. É aqui que você pode analisar as requisições e respostas, identificar padrões e potencialmente descobrir vulnerabilidades.

Volte para a aplicação OWASP ZAP.

  1. No painel esquerdo, procure pela árvore Sites. Você deverá ver http://example.com listado.
  2. Expanda http://example.com e, em seguida, http. Você verá uma lista de métodos HTTP (por exemplo, GET) e os caminhos que o Gobuster tentou acessar (por exemplo, /, /index.html, /robots.txt, etc.).
  3. Clique em qualquer uma dessas entradas. Nos painéis inferiores, você verá as abas Request e Response, mostrando a requisição HTTP completa enviada pelo Gobuster e a resposta correspondente do servidor.

Isso confirma que o tráfego do Gobuster foi roteado com sucesso através do proxy, permitindo uma inspeção detalhada. Essa capacidade é essencial para testes avançados de aplicações web.

Resumo

Neste laboratório, você aprendeu com sucesso como rotear o tráfego do Gobuster através de um proxy web. Você iniciou o OWASP ZAP, confirmou sua configuração de proxy, usou a flag -p para direcionar as requisições do Gobuster através do proxy, executou um scan e, finalmente, observou o tráfego interceptado dentro do ZAP. Essa habilidade é fundamental para qualquer testador de penetração web, permitindo uma análise mais profunda e manipulação do tráfego de ferramentas automatizadas. Ao entender como fazer proxy de suas ferramentas, você ganha maior controle e visibilidade sobre seu processo de teste, levando a uma descoberta de vulnerabilidades mais eficaz.