Realizar Varredura Agressiva no Nmap

NmapBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como realizar uma varredura agressiva no Nmap. O laboratório cobre a execução de uma varredura agressiva em um endereço IP alvo, a varredura de portas específicas, a adição de verbosidade à varredura, o salvamento dos resultados da varredura, a análise da saída detalhada e a comparação com uma varredura básica. Você usará comandos como nmap -A, nmap -A -p, nmap -v -A e nmap -A -oN no terminal Xfce para realizar essas tarefas.

Executar varredura agressiva com nmap -A 192.168.1.1

Nesta etapa, realizaremos uma varredura agressiva usando o Nmap. Uma varredura agressiva combina várias técnicas de varredura para reunir informações abrangentes sobre um alvo. A opção -A habilita a detecção de SO (Sistema Operacional), detecção de versão, varredura de scripts e traceroute. Este tipo de varredura é útil para identificar portas abertas, serviços em execução nessas portas e o sistema operacional do alvo.

Antes de começarmos, vamos esclarecer o que é um endereço IP. Um endereço IP é um rótulo numérico atribuído a cada dispositivo conectado a uma rede de computadores que usa o Protocolo de Internet para comunicação. Em nosso caso, 192.168.1.1 é um endereço IP privado, comumente usado em redes domésticas ou de pequenos escritórios.

Agora, vamos executar a varredura agressiva. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Em seguida, execute o seguinte comando Nmap:

sudo nmap -A 192.168.1.1

Você será solicitado a inserir sua senha. Como o usuário labex tem privilégios sudo sem senha, basta pressionar Enter.

Este comando iniciará uma varredura agressiva contra o endereço IP alvo 192.168.1.1. O Nmap tentará identificar o sistema operacional, detectar versões dos serviços em execução, executar scripts padrão e realizar um traceroute.

A saída exibirá um relatório detalhado dos resultados da varredura, incluindo portas abertas, versões dos serviços e outras informações coletadas durante a varredura. A saída exata dependerá do sistema alvo e sua configuração. Aqui está um exemplo de como a saída pode ser (embora seus resultados provavelmente difiram):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.0012s latency).
Not shown: 997 closed ports
PORT    STATE SERVICE  VERSION
22/tcp  open  ssh      OpenSSH 7.6p0 Ubuntu 7ubuntu2 (protocol 2.0)
| ssh-hostkey:
|   2048 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (RSA)
|   256 SHA256:yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (ECDSA)
|_  256 SHA256:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz (ED25519)
80/tcp  open  http     Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
443/tcp open  ssl/http Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
| ssl-cert: Subject: commonName=localhost
| Not valid before: 2018-08-22T12:20:36
| Not valid after:  2028-08-19T12:20:36
| ...
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

TRACEROUTE
HOP RTT     ADDRESS
1   0.00 ms 192.168.1.1

OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 5.23 seconds

Esta saída mostra portas abertas (22, 80 e 443 neste exemplo), os serviços em execução nessas portas (SSH e HTTP) e informações sobre o sistema operacional (Linux). A seção traceroute mostra o caminho para o alvo.

Varredura de portas específicas com nmap -A -p 22,80 127.0.0.1

Nesta etapa, focaremos nossa varredura Nmap em portas específicas. Em vez de varrer todas as portas ou depender da seleção de portas padrão do Nmap, especificaremos que o Nmap deve varrer apenas as portas 22 e 80 no endereço IP alvo 127.0.0.1. Isso é útil quando você deseja verificar rapidamente o status de serviços conhecidos ou reduzir o tempo de varredura.

Antes de prosseguirmos, vamos entender o que são portas. Em redes, uma porta é um ponto virtual onde as conexões de rede começam e terminam. As portas são baseadas em software e gerenciadas pelo sistema operacional. Elas permitem que vários aplicativos utilizem simultaneamente uma única conexão de rede. A porta 22 é comumente usada para SSH (Secure Shell), um protocolo seguro para acesso remoto, e a porta 80 é tipicamente usada para HTTP (Hypertext Transfer Protocol), a base da comunicação de dados na World Wide Web.

127.0.0.1 é o endereço de loopback, também conhecido como localhost. Ele se refere à máquina atual em que você está trabalhando. A varredura de 127.0.0.1 é útil para testar serviços em execução em sua própria máquina.

Agora, vamos executar o comando Nmap para varrer portas específicas. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Em seguida, execute o seguinte comando Nmap:

sudo nmap -A -p 22,80 127.0.0.1

Você será solicitado a inserir sua senha. Como o usuário labex tem privilégios sudo sem senha, basta pressionar Enter.

Este comando iniciará uma varredura agressiva, mas apenas nas portas 22 e 80 de 127.0.0.1. O Nmap tentará identificar os serviços em execução nessas portas e reunir outras informações.

A saída exibirá um relatório dos resultados da varredura, especificamente para as portas 22 e 80. Aqui está um exemplo de como a saída pode ser (embora seus resultados possam diferir):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000028s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (protocol 2.0)
| ssh-hostkey:
|   3072 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (RSA)
|   256 SHA256:yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (ECDSA)
|_  256 SHA256:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz (ED25519)
80/tcp open  http    Apache httpd 2.4.41 ((Ubuntu))
|_http-server-header: Apache/2.4.41 (Ubuntu)

Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 2.57 seconds

Esta saída mostra que a porta 22 está aberta e executando SSH, e a porta 80 está aberta e executando o Apache HTTP Server. As informações da versão para cada serviço também são exibidas.

Adicionar verbosidade com nmap -v -A 192.168.1.1

Nesta etapa, adicionaremos verbosidade à nossa varredura agressiva do Nmap. Verbosidade no Nmap significa aumentar a quantidade de informações exibidas durante a varredura. Isso pode ser útil para entender o que o Nmap está fazendo e para solucionar quaisquer problemas. A opção -v aumenta o nível de verbosidade. Usar -v várias vezes (por exemplo, -vv ou -vvv) aumenta ainda mais o nível de verbosidade, fornecendo uma saída ainda mais detalhada.

Vamos esclarecer por que a verbosidade é útil. Por padrão, o Nmap fornece um resumo dos resultados da varredura. No entanto, ao solucionar problemas ou tentar entender o processo de varredura, informações mais detalhadas podem ser inestimáveis. A saída verbose mostra o progresso da varredura, as sondas sendo enviadas e as respostas recebidas.

Agora, vamos executar o comando Nmap com verbosidade. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Em seguida, execute o seguinte comando Nmap:

sudo nmap -v -A 192.168.1.1

Você será solicitado a inserir sua senha. Como o usuário labex tem privilégios sudo sem senha, basta pressionar Enter.

Este comando iniciará uma varredura agressiva contra o endereço IP alvo 192.168.1.1, com verbosidade aumentada. O Nmap exibirá mais informações sobre o processo de varredura à medida que ele progride.

A saída será mais detalhada do que a varredura agressiva anterior. Você verá informações sobre as sondas sendo enviadas, as respostas recebidas e o progresso de cada etapa da varredura. Aqui está um exemplo de como a saída pode ser (embora seus resultados provavelmente difiram):

Starting Nmap 7.80 ( https://nmap.org )
NSE: Loaded 151 scripts for scanning.
NSE: Script Pre-scanning.
NSE: Starting runlevel 1 (of 3) scan.
NSE: Executing script msrpc-enum on 192.168.1.1
NSE: Starting runlevel 2 (of 3) scan.
NSE: Starting runlevel 3 (of 3) scan.
NSE: Finished script pre-scanning.
Initiating Ping Scan at 14:35
Scanning 192.168.1.1 [4 ports]
Completed Ping Scan at 14:35, 0.00s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 14:35
Completed Parallel DNS resolution of 1 host. at 14:35, 0.00s elapsed
Initiating SYN Stealth Scan at 14:35
Scanning 192.168.1.1 [1000 ports]
Discovered open port 22/tcp on 192.168.1.1
Discovered open port 80/tcp on 192.168.1.1
Discovered open port 443/tcp on 192.168.1.1
Completed SYN Stealth Scan at 14:35, 0.15s elapsed (1000 total ports)
Initiating Service scan at 14:35
Scanning 3 services on 192.168.1.1
Completed Service scan at 14:35, 5.23s elapsed (3 services total)
Initiating OS detection at 14:35
Completed OS detection at 14:35, 5.18s elapsed
Nmap scan report for 192.168.1.1
Host is up (0.00078s latency).
Not shown: 997 closed ports
... (rest of the output) ...

A saída verbose mostra as diferentes etapas da varredura, como a varredura de ping, a varredura de portas, a detecção de serviços e a detecção de SO. Ele também mostra os scripts sendo executados pelo Nmap Scripting Engine (NSE).

Salvar varredura agressiva com nmap -A -oN aggressive.txt 127.0.0.1

Nesta etapa, aprenderemos como salvar a saída de uma varredura agressiva do Nmap em um arquivo. Isso é útil para análise posterior, relatórios ou comparação com outras varreduras. O Nmap oferece várias opções para salvar a saída em diferentes formatos. Usaremos a opção -oN, que salva a saída em um formato "normal" legível por humanos.

A opção -oN seguida por um nome de arquivo informa ao Nmap para salvar os resultados da varredura no arquivo especificado usando o formato de saída normal. Este formato foi projetado para ser facilmente lido por humanos.

Agora, vamos executar o comando Nmap para salvar a saída da varredura agressiva em um arquivo. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Em seguida, execute o seguinte comando Nmap:

sudo nmap -A -oN aggressive.txt 127.0.0.1

Você será solicitado a inserir sua senha. Como o usuário labex tem privilégios sudo sem senha, basta pressionar Enter.

Este comando iniciará uma varredura agressiva contra o endereço IP alvo 127.0.0.1 e salvará a saída em formato normal em um arquivo chamado aggressive.txt no diretório ~/project.

Após a conclusão da varredura, você pode visualizar o conteúdo do arquivo aggressive.txt usando um editor de texto como nano ou cat.

Para visualizar o conteúdo do arquivo usando nano, execute o seguinte comando:

nano aggressive.txt

Isso abrirá o arquivo aggressive.txt no editor de texto nano. Você pode rolar pelo arquivo para visualizar os resultados da varredura.

Alternativamente, você pode usar o comando cat para exibir o conteúdo do arquivo no terminal:

cat aggressive.txt

Isso imprimirá o conteúdo do arquivo aggressive.txt no terminal.

O conteúdo do arquivo aggressive.txt será semelhante à saída que você vê na tela ao executar o Nmap sem a opção -oN, mas agora ele está salvo em um arquivo para uso posterior.

## Nmap 7.80 scan initiated Mon Nov 21 14:45:32 2023 as: nmap -A -oN aggressive.txt 127.0.0.1
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000028s latency).
Other addresses for localhost (not scanned): ::1

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (protocol 2.0)
| ssh-hostkey:
|   3072 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (RSA)
|   256 SHA256:yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (ECDSA)
|_  256 SHA256:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz (ED25519)
80/tcp open  http    Apache httpd 2.4.41 ((Ubuntu))
|_http-server-header: Apache/2.4.41 (Ubuntu)

Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
## Nmap done at Mon Nov 21 14:45:35 2023 -- 1 IP address (1 host up) scanned in 2.57 seconds

Analisar saída detalhada no terminal Xfce

Nesta etapa, analisaremos a saída detalhada da varredura agressiva que salvamos na etapa anterior. Entender a saída das varreduras do Nmap é crucial para identificar potenciais vulnerabilidades e configurações incorretas em um sistema. Usaremos o comando cat para visualizar o conteúdo do arquivo aggressive.txt no terminal Xfce e discutiremos as seções principais da saída.

A varredura agressiva (nmap -A) executa vários tipos de varreduras, incluindo:

  • Varredura TCP Connect (TCP Connect Scan): Verifica se as portas estão abertas completando o handshake TCP de três vias.
  • Detecção de Versão do Serviço (Service Version Detection): Determina a versão do software em execução nas portas abertas.
  • Detecção de SO (OS Detection): Tenta identificar o sistema operacional do host de destino.
  • Traceroute: Mapeia o caminho da rede para o destino.
  • Nmap Scripting Engine (NSE): Executa scripts para identificar vulnerabilidades e coletar mais informações.

Agora, vamos analisar a saída. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Em seguida, use o comando cat para exibir o conteúdo do arquivo aggressive.txt:

cat aggressive.txt

A saída será exibida no terminal. Vamos detalhar as seções principais:

  1. Relatório de Varredura do Nmap (Nmap Scan Report): Esta seção fornece informações gerais sobre a varredura, incluindo o endereço IP de destino, o nome do host (se disponível) e os horários de início e término da varredura.

    ## Nmap 7.80 scan initiated Mon Nov 21 14:45:32 2023 as: nmap -A -oN aggressive.txt 127.0.0.1
    Nmap scan report for localhost (127.0.0.1)
    Host is up (0.000028s latency).
    Other addresses for localhost (not scanned): ::1
  2. Resultados da Varredura de Portas (Port Scan Results): Esta seção lista as portas abertas, fechadas e filtradas no host de destino. Para cada porta aberta, o Nmap tenta identificar o serviço em execução nessa porta e sua versão.

    PORT   STATE SERVICE VERSION
    22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (protocol 2.0)
    | ssh-hostkey:
    |   3072 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (RSA)
    |   256 SHA256:yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (ECDSA)
    |_  256 SHA256:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz (ED25519)
    80/tcp open  http    Apache httpd 2.4.41 ((Ubuntu))
    |_http-server-header: Apache/2.4.41 (Ubuntu)
    • PORT: O número da porta e o protocolo (por exemplo, 22/tcp).
    • STATE: O estado da porta (open, closed, filtered).
    • SERVICE: O serviço identificado em execução na porta (por exemplo, ssh, http).
    • VERSION: A versão do serviço (por exemplo, OpenSSH 8.2p1, Apache httpd 2.4.41).
    • ssh-hostkey: A impressão digital da chave do host SSH.
    • http-server-header: O cabeçalho do servidor HTTP.
  3. Informações do Serviço (Service Info): Esta seção fornece informações adicionais sobre os serviços em execução no host de destino, como o sistema operacional.

    Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
  4. Detecção de SO (OS Detection): Esta seção exibe os resultados das tentativas de detecção de SO do Nmap. O Nmap compara as respostas que recebe do host de destino com um banco de dados de impressões digitais de SO conhecidos para identificar o sistema operacional.

    OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
  5. Resultados do Nmap Scripting Engine (NSE) (Nmap Scripting Engine (NSE) Results): Esta seção mostra a saída de quaisquer scripts NSE que foram executados durante a varredura. Esses scripts podem fornecer uma ampla gama de informações, como identificar vulnerabilidades, coletar informações do usuário e detectar configurações incorretas. (Esta seção pode não estar presente se nenhum script foi executado ou se eles não produziram nenhuma saída.)

  6. Resumo da Varredura (Scan Summary): Esta seção resume os resultados da varredura, incluindo o número de endereços IP varridos e o tempo total da varredura.

    ## Nmap done at Mon Nov 21 14:45:35 2023 -- 1 IP address (1 host up) scanned in 2.57 seconds

Ao analisar a saída detalhada da varredura agressiva, você pode obter uma compreensão abrangente dos serviços de rede, do sistema operacional e das potenciais vulnerabilidades do sistema de destino.

Comparar com varredura básica no terminal Xfce

Nesta etapa, faremos uma varredura básica do Nmap e compararemos sua saída com a varredura agressiva que realizamos anteriormente. Essa comparação destacará as diferenças no nível de detalhe e nos tipos de informações coletadas por cada varredura. Uma varredura básica normalmente executa apenas uma varredura TCP connect, que é mais rápida, mas fornece menos informações do que uma varredura agressiva.

Uma varredura básica do Nmap, sem nenhuma opção específica, executa uma varredura TCP connect nas 1000 portas mais comuns. Ela identifica se essas portas estão abertas, fechadas ou filtradas. Ela não executa a detecção de versão do serviço, a detecção de SO ou executa scripts NSE por padrão.

Agora, vamos executar uma varredura básica do Nmap e comparar os resultados. Abra seu terminal Xfce. Certifique-se de estar no diretório ~/project.

cd ~/project

Execute o seguinte comando Nmap para realizar uma varredura básica contra o endereço IP de destino 127.0.0.1:

sudo nmap 127.0.0.1

Você será solicitado a inserir sua senha. Como o usuário labex tem privilégios sudo sem senha, basta pressionar Enter.

A saída da varredura básica será exibida no terminal. Ela mostrará as portas abertas, fechadas e filtradas no host de destino.

Starting Nmap 7.80 ( https://nmap.org ) at Mon Nov 21 15:00:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000028s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 997 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
631/tcp  open  ipp

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

Agora, vamos comparar essa saída com a saída da varredura agressiva que salvamos no arquivo aggressive.txt. Você pode usar o comando cat para visualizar o conteúdo do arquivo aggressive.txt novamente:

cat aggressive.txt

Compare a saída da varredura básica com o conteúdo do arquivo aggressive.txt. Você notará as seguintes diferenças:

  • Detecção de Versão do Serviço (Service Version Detection): A varredura agressiva identifica as versões específicas dos serviços em execução nas portas abertas (por exemplo, OpenSSH 8.2p1, Apache httpd 2.4.41), enquanto a varredura básica identifica apenas o nome do serviço (por exemplo, ssh, http).
  • Detecção de SO (OS Detection): A varredura agressiva tenta identificar o sistema operacional do host de destino, enquanto a varredura básica não o faz.
  • Scripts NSE: A varredura agressiva pode executar scripts NSE para coletar informações adicionais, enquanto a varredura básica não o faz.
  • Número de Portas Varridas (Number of Ports Scanned): A varredura básica varre apenas as 1000 portas mais comuns, enquanto a varredura agressiva pode varrer mais portas, dependendo das opções usadas.

Em resumo, a varredura agressiva fornece uma visão mais detalhada e abrangente do sistema de destino do que a varredura básica. No entanto, ela também leva mais tempo para ser concluída e pode ser mais propensa a ser detectada por sistemas de detecção de intrusão. A escolha de qual tipo de varredura usar depende dos objetivos específicos da avaliação e das restrições do ambiente.

Resumo

Neste laboratório, os participantes aprenderam a realizar varreduras agressivas usando o Nmap. Eles executaram comandos como nmap -A para conduzir varreduras abrangentes que combinam detecção de SO, detecção de versão, varredura de scripts e traceroute. Eles também aprenderam a varrer portas específicas com -p, adicionar verbosidade com -v e salvar os resultados da varredura em um arquivo usando -oN. Além disso, eles analisaram saídas de varredura detalhadas e as compararam com varreduras básicas no terminal Xfce.