Executar Varredura UDP com Nmap

NmapBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como executar uma varredura UDP com o Nmap. Começará por realizar uma varredura UDP básica em um endereço IP alvo usando a opção -sU. Em seguida, você varrerá portas UDP específicas, combinará varreduras UDP e TCP e adicionará detecção de versão. Finalmente, você visualizará os resultados da varredura UDP no terminal Xfce e comparará as saídas no editor de texto Xfce.

Executar varredura UDP com nmap -sU 192.168.1.1

Nesta etapa, realizaremos uma varredura UDP básica usando o Nmap. UDP (User Datagram Protocol) é um protocolo sem conexão, o que significa que, ao contrário do TCP, não há um handshake para estabelecer uma conexão antes que os dados sejam enviados. Isso torna as varreduras UDP diferentes das varreduras TCP. A opção -sU do Nmap é usada para iniciar uma varredura UDP.

Antes de começarmos, é importante entender que as varreduras UDP podem ser menos confiáveis do que as varreduras TCP. Como o UDP é sem conexão, o Nmap nem sempre pode receber uma resposta de uma porta, mesmo que ela esteja aberta. Firewalls e condições de rede também podem afetar a precisão das varreduras UDP.

Vamos começar varrendo o endereço IP alvo 192.168.1.1 usando o seguinte comando:

sudo nmap -sU 192.168.1.1

Este comando diz ao Nmap para realizar uma varredura UDP (-sU) no endereço IP 192.168.1.1. Você precisará de sudo porque as varreduras UDP geralmente exigem privilégios elevados para enviar pacotes brutos (raw packets).

Após executar o comando, você verá uma saída semelhante à seguinte:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for 192.168.1.1
Host is up (0.0010s latency).
Not shown: 997 closed udp ports
PORT      STATE         SERVICE
137/udp   open|filtered netbios-ns
138/udp   open|filtered netbios-dgm
5353/udp  open|filtered zeroconf

Nmap done: 1 IP address (1 host up) scanned in 5.23 seconds

Explicação da saída:

  • Starting Nmap ...: Mostra a versão do Nmap e a hora de início da varredura.
  • Nmap scan report for 192.168.1.1: Indica o endereço IP alvo.
  • Host is up: Confirma que o host alvo está acessível.
  • Not shown: 997 closed udp ports: Indica que o Nmap não mostrou as 997 portas UDP fechadas. Por padrão, o Nmap mostra apenas portas abertas, open|filtered ou filtradas.
  • PORT STATE SERVICE: Lista o número da porta, seu estado e o serviço em execução nessa porta (se conhecido).
    • open: Indica que o Nmap recebeu uma resposta da porta, sugerindo que um serviço está ouvindo nessa porta.
    • open|filtered: Indica que a porta está aberta ou filtrada. O Nmap não conseguiu determinar em qual estado ela está. Isso geralmente significa que um firewall está bloqueando as sondagens (probes) do Nmap.
    • filtered: Indica que um firewall está bloqueando as sondagens do Nmap, e o Nmap não pode determinar se a porta está aberta ou fechada.
  • Nmap done: Mostra o tempo de conclusão da varredura e o número de endereços IP varridos.

Considerações Importantes:

  • Substitua 192.168.1.1 pelo endereço IP real do alvo que você deseja varrer.
  • Os resultados de uma varredura UDP podem variar dependendo das condições da rede e das configurações do firewall.
  • Varredura de uma rede sem permissão é ilegal e antiética. Varra apenas redes que você possui ou para as quais tem permissão explícita para varrer.

Varredura de portas UDP com nmap -sU -p 53,123 127.0.0.1

Nesta etapa, focaremos nossa varredura UDP em portas específicas. Isso é útil quando você deseja verificar se serviços específicos estão sendo executados em uma máquina alvo sem varrer todas as portas UDP, o que pode consumir muito tempo. Estaremos varrendo as portas 53 (DNS) e 123 (NTP) no localhost (127.0.0.1).

A opção -p no Nmap permite que você especifique as portas que deseja varrer. Você pode fornecer uma única porta, um intervalo de portas (por exemplo, 1-100) ou uma lista de portas separadas por vírgulas (por exemplo, 21,22,80).

Para varrer as portas UDP 53 e 123 em 127.0.0.1, use o seguinte comando:

sudo nmap -sU -p 53,123 127.0.0.1

Este comando diz ao Nmap para realizar uma varredura UDP (-sU) nas portas 53 e 123 (-p 53,123) do endereço IP 127.0.0.1 (localhost). Novamente, sudo é frequentemente necessário para varreduras UDP.

Após executar o comando, você pode ver uma saída semelhante a esta:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000047s latency).

PORT    STATE         SERVICE
53/udp  open|filtered domain
123/udp closed        ntp

Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds

Explicação da saída:

  • Nmap scan report for localhost (127.0.0.1): Indica que o alvo é o localhost.
  • PORT STATE SERVICE: Lista o número da porta, seu estado e o serviço em execução nessa porta (se conhecido).
    • 53/udp open|filtered domain: A porta 53 (DNS) está aberta ou filtrada. Isso significa que o Nmap não conseguiu determinar definitivamente se a porta está aberta devido a possíveis regras de firewall ou condições de rede.
    • 123/udp closed ntp: A porta 123 (NTP) está fechada. Isso significa que nenhum serviço está ouvindo nessa porta.

Principais Conclusões:

  • A opção -p permite que você direcione portas específicas, tornando suas varreduras mais eficientes.
  • A saída fornece informações sobre o estado de cada porta varrida (aberta, fechada, filtrada, etc.).
  • Compreender os serviços associados a portas comuns (como 53 para DNS e 123 para NTP) ajuda você a interpretar os resultados da varredura.

Combinar UDP e TCP com nmap -sU -sT 192.168.1.1

Nesta etapa, combinaremos varreduras UDP e TCP em um único comando Nmap. Isso nos permite obter uma visão mais abrangente dos serviços em execução em uma máquina alvo, pois alguns serviços usam UDP, enquanto outros usam TCP.

A opção -sT do Nmap executa uma varredura TCP connect. Esta é a forma mais básica de varredura TCP, onde o Nmap tenta estabelecer uma conexão TCP completa com a porta alvo. É geralmente confiável, mas pode ser facilmente detectado.

Para executar uma varredura UDP e uma varredura TCP connect em 192.168.1.1, use o seguinte comando:

sudo nmap -sU -sT 192.168.1.1

Este comando diz ao Nmap para executar uma varredura UDP (-sU) e uma varredura TCP connect (-sT) no endereço IP 192.168.1.1. sudo é frequentemente necessário, especialmente para a parte UDP da varredura.

Após executar o comando, você verá uma saída que inclui resultados das varreduras UDP e TCP. A saída pode ser semelhante a esta:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
Nmap scan report for 192.168.1.1
Host is up (0.0010s latency).
Not shown: 997 closed udp ports
PORT      STATE         SERVICE
137/udp   open|filtered netbios-ns
138/udp   open|filtered netbios-dgm
5353/udp  open|filtered zeroconf
PORT      STATE    SERVICE
22/tcp    open     ssh
80/tcp    open     http

Nmap done: 1 IP address (1 host up) scanned in 7.23 seconds

Explicação da saída:

  • A saída é semelhante às varreduras anteriores, mas agora inclui resultados para as portas UDP e TCP.
  • A primeira seção mostra os resultados da varredura UDP, com as portas e seus estados (aberta, fechada, filtrada, etc.).
  • A segunda seção mostra os resultados da varredura TCP, também com portas e seus estados.
  • Observe que o mesmo endereço IP pode ter diferentes serviços em execução em diferentes protocolos (UDP e TCP).

Benefícios da combinação de varreduras UDP e TCP:

  • Resultados mais abrangentes: Você obtém uma imagem mais completa dos serviços em execução no alvo.
  • Identificação de diferentes tipos de serviço: Você pode identificar serviços que usam UDP (por exemplo, DNS, NTP) e serviços que usam TCP (por exemplo, HTTP, SSH).

Nota Importante:

A combinação de tipos de varredura pode aumentar o tempo de varredura. Considere direcionar portas específicas se precisar de resultados mais rápidos.

Adicionar detecção de versão com nmap -sUV 192.168.1.1

Nesta etapa, adicionaremos a detecção de versão à nossa varredura UDP. A detecção de versão permite que o Nmap tente determinar o nome do aplicativo e o número da versão em execução nas portas abertas. Isso pode fornecer informações valiosas sobre possíveis vulnerabilidades.

A opção -sV no Nmap habilita a detecção de versão. Quando combinada com -sU para varredura UDP, torna-se -sUV. O Nmap enviará sondas para portas UDP abertas para tentar identificar o serviço e sua versão.

Para executar uma varredura UDP com detecção de versão em 192.168.1.1, use o seguinte comando:

sudo nmap -sUV 192.168.1.1

Este comando diz ao Nmap para executar uma varredura UDP (-sU) e detecção de versão (-sV) no endereço IP 192.168.1.1. A opção combinada é -sUV. Como antes, sudo é frequentemente necessário para varreduras UDP.

Após executar o comando, você pode ver uma saída semelhante a esta:

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00088s latency).
Not shown: 997 closed udp ports
PORT      STATE         SERVICE VERSION
137/udp   open|filtered netbios-ns
138/udp   open|filtered netbios-dgm
5353/udp  open|filtered zeroconf  Apple Bonjour
Service Info: OS: Apple embedded

Nmap done: 1 IP address (1 host up) scanned in 12.54 seconds

Explicação da saída:

  • A saída agora inclui uma coluna VERSION, que exibe a versão do serviço detectada (se disponível).
  • 5353/udp open|filtered zeroconf Apple Bonjour: O Nmap identificou o serviço em execução na porta 5353 como Apple Bonjour.
  • Service Info: OS: Apple embedded: O Nmap também tenta determinar o sistema operacional com base nas informações do serviço.

Principais Conclusões:

  • A opção -sV (ou -sUV quando combinada com a varredura UDP) habilita a detecção de versão.
  • A detecção de versão pode ajudar a identificar os aplicativos e versões específicos em execução nas portas abertas.
  • Essas informações podem ser usadas para avaliar possíveis vulnerabilidades e planejar ações futuras.

Considerações Importantes:

  • A detecção de versão pode levar mais tempo do que uma simples varredura de porta, pois o Nmap precisa enviar sondas adicionais para cada porta aberta.
  • A precisão da detecção de versão depende do serviço e das assinaturas Nmap disponíveis. Às vezes, o Nmap pode não ser capaz de identificar o serviço ou sua versão com precisão.

Visualizar resultados UDP no terminal Xfce

Nesta etapa, focaremos em visualizar e analisar os resultados da varredura UDP diretamente no terminal Xfce. Embora o Nmap forneça saída diretamente no terminal, às vezes é útil salvar a saída em um arquivo para facilitar a revisão e análise. Usaremos comandos de terminal para filtrar e visualizar as partes específicas de UDP da varredura.

Primeiro, vamos executar uma varredura UDP e salvar a saída em um arquivo. Isso nos permitirá trabalhar com os resultados com mais facilidade. Usaremos a opção -oN para salvar a saída em um formato "normal".

sudo nmap -sUV 192.168.1.1 -oN udp_scan_results.txt

Este comando executa uma varredura UDP com detecção de versão em 192.168.1.1 e salva a saída em um arquivo chamado udp_scan_results.txt no seu diretório atual (~/project).

Agora que temos os resultados salvos em um arquivo, podemos usar comandos de terminal para visualizar e filtrar as informações específicas de UDP.

Para visualizar todo o conteúdo do arquivo, você pode usar o comando cat:

cat udp_scan_results.txt

Isso exibirá todo o relatório de varredura do Nmap no terminal. No entanto, estamos principalmente interessados nos resultados UDP. Podemos usar o comando grep para filtrar a saída e mostrar apenas as linhas que contêm "udp".

grep "udp" udp_scan_results.txt

Este comando pesquisará o arquivo udp_scan_results.txt por linhas contendo a string "udp" e exibirá essas linhas no terminal. A saída mostrará as portas UDP abertas ou filtradas, juntamente com quaisquer informações de versão que o Nmap conseguiu detectar.

Exemplo de saída:

137/udp   open|filtered netbios-ns
138/udp   open|filtered netbios-dgm
5353/udp  open|filtered zeroconf  Apple Bonjour

Você também pode usar o comando less para visualizar o arquivo página por página:

less udp_scan_results.txt

Dentro do less, você pode pesquisar por "udp" digitando /udp e pressionando Enter. Pressione n para ir para a próxima correspondência. Pressione q para sair do less.

Ao usar esses comandos simples de terminal, você pode visualizar e analisar efetivamente os resultados da varredura UDP gerados pelo Nmap. Isso permite que você identifique rapidamente as portas UDP abertas e quaisquer informações de serviço associadas.

Comparar saídas no editor de texto Xfce

Nesta etapa, usaremos o editor de texto Xfce para comparar as saídas de diferentes varreduras Nmap. Isso é útil para identificar mudanças nas portas abertas, serviços ou versões ao longo do tempo, ou para comparar os resultados de varreduras com diferentes opções.

Primeiro, vamos supor que você já executou duas varreduras Nmap e salvou as saídas em arquivos separados. Por exemplo, você pode ter executado uma varredura UDP básica e uma varredura UDP com detecção de versão, salvando os resultados em udp_scan_basic.txt e udp_scan_version.txt, respectivamente. Se você não tiver esses arquivos, crie-os usando os seguintes comandos:

sudo nmap -sU 192.168.1.1 -oN udp_scan_basic.txt
sudo nmap -sUV 192.168.1.1 -oN udp_scan_version.txt

Agora, usaremos o comando xfce4-terminal para abrir o editor de texto Xfce (mousepad) e carregar ambos os arquivos para comparação.

mousepad udp_scan_basic.txt udp_scan_version.txt

Este comando abrirá duas instâncias do mousepad, cada uma exibindo um dos arquivos de saída do Nmap.

Comparando as Saídas:

  1. Examine a Saída da Varredura Básica (udp_scan_basic.txt): Este arquivo conterá os resultados da varredura UDP básica, mostrando as portas UDP abertas ou filtradas.

  2. Examine a Saída da Varredura de Detecção de Versão (udp_scan_version.txt): Este arquivo conterá os resultados da varredura UDP com detecção de versão. Além das portas UDP abertas ou filtradas, ele também pode mostrar as versões dos serviços detectados.

  3. Compare Lado a Lado: Ao ter ambos os arquivos abertos em janelas separadas, você pode comparar facilmente os resultados lado a lado. Procure por diferenças nas portas abertas, no estado das portas (aberta, filtrada, fechada) e nas informações do serviço.

Exemplo de Comparação:

  • udp_scan_basic.txt pode mostrar:

    137/udp   open|filtered netbios-ns
    138/udp   open|filtered netbios-dgm
    5353/udp  open|filtered zeroconf
  • udp_scan_version.txt pode mostrar:

    137/udp   open|filtered netbios-ns
    138/udp   open|filtered netbios-dgm
    5353/udp  open|filtered zeroconf  Apple Bonjour
    Service Info: OS: Apple embedded

Neste exemplo, a varredura de detecção de versão foi capaz de identificar o serviço em execução na porta 5353 como "Apple Bonjour" e fornecer informações do sistema operacional, que não estavam disponíveis na varredura básica.

Ao comparar as saídas no editor de texto Xfce, você pode obter uma melhor compreensão das diferenças entre as varreduras e as informações adicionais fornecidas por diferentes opções do Nmap. Isso pode ser valioso para identificar possíveis vulnerabilidades e planejar ações futuras.

Resumo

Neste laboratório, os participantes aprenderam a executar varreduras UDP com Nmap. Eles começaram com uma varredura UDP básica usando a opção -sU no IP 192.168.1.1, entendendo que UDP é sem conexão e que as varreduras podem ser menos confiáveis do que as varreduras TCP. Eles também varreram portas UDP específicas, combinaram varreduras UDP e TCP, adicionaram detecção de versão e visualizaram e compararam os resultados no terminal Xfce e no editor de texto.