Folha de Dicas Nmap

Aprenda Nmap com Laboratórios Práticos

Aprenda a varredura de rede Nmap através de laboratórios práticos e cenários do mundo real. O LabEx fornece cursos abrangentes de Nmap que cobrem descoberta essencial de rede, varredura de portas, detecção de serviços, impressão digital de SO e avaliação de vulnerabilidades. Domine técnicas de reconhecimento de rede e auditoria de segurança.

Instalação e Configuração

Instalação no Linux

Instale o Nmap usando o gerenciador de pacotes da sua distribuição.

# Ubuntu/Debian
sudo apt update && sudo apt install nmap
# RHEL/Fedora/CentOS
sudo dnf install nmap
# Verificar instalação
nmap --version

Instalação no macOS

Instale usando o gerenciador de pacotes Homebrew.

# Instalar via Homebrew
brew install nmap
# Download direto de nmap.org
# Baixar .dmg de https://nmap.org/download.html

Instalação no Windows

Baixe e instale a partir do site oficial.

# Baixar instalador de
https://nmap.org/download.html
# Executar o instalador .exe com privilégios de administrador
# Inclui GUI Zenmap e versão de linha de comando

Verificação Básica

Teste sua instalação e obtenha ajuda.

# Exibir informações de versão
nmap --version
# Mostrar menu de ajuda
nmap -h
# Ajuda estendida e opções
man nmap

Técnicas Básicas de Varredura

Varredura Simples de Host: nmap [alvo]

Varredura básica de um único host ou endereço IP.

# Varredura de IP único
nmap 192.168.1.1
# Varredura de nome de host
nmap example.com
# Varredura de múltiplos IPs
nmap 192.168.1.1 192.168.1.5
192.168.1.10
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

O que uma varredura básica nmap 192.168.1.1 faz por padrão?
Varre as 1000 portas TCP mais comuns
Varre todas as 65535 portas
Apenas realiza descoberta de host
Varre apenas a porta 80

Varredura de Intervalo de Rede

O Nmap aceita nomes de host, endereços IP, sub-redes.

# Varredura de intervalo de IP
nmap 192.168.1.1-254
# Varredura de sub-rede com notação CIDR
nmap 192.168.1.0/24
# Varredura de múltiplas redes
nmap 192.168.1.0/24 10.0.0.0/8

Entrada a Partir de Arquivo

Varre alvos listados em um arquivo.

# Ler alvos do arquivo
nmap -iL targets.txt
# Excluir hosts específicos
nmap 192.168.1.0/24 --exclude
192.168.1.1
# Excluir de arquivo
nmap 192.168.1.0/24 --excludefile
exclude.txt

Técnicas de Descoberta de Host

Varredura Ping: nmap -sn

A descoberta de host é uma maneira fundamental pela qual muitos analistas e pentesteres usam o Nmap. Seu propósito é obter uma visão geral de quais sistemas estão online.

# Apenas varredura ping (sem varredura de porta)
nmap -sn 192.168.1.0/24
# Pular descoberta de host (assumir que todos os hosts estão ativos)
nmap -Pn 192.168.1.1
# Ping echo ICMP
nmap -PE 192.168.1.0/24
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

O que nmap -sn faz?
Realiza apenas a descoberta de host, sem varredura de porta
Varre todas as portas no alvo
Realiza uma varredura furtiva (stealth scan)
Varre apenas portas UDP

Técnicas de Ping TCP

Use pacotes TCP para descoberta de host.

# Ping SYN TCP para a porta 80
nmap -PS80 192.168.1.0/24
# Ping ACK TCP
nmap -PA80 192.168.1.0/24
# Ping SYN TCP para múltiplas portas
nmap -PS22,80,443 192.168.1.0/24

Ping UDP: nmap -PU

Use pacotes UDP para descoberta de host.

# Ping UDP para portas comuns
nmap -PU53,67,68,137 192.168.1.0/24
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Por que você usaria o ping UDP em vez do ping ICMP?
O ping UDP é sempre mais rápido
Algumas redes bloqueiam ICMP, mas permitem pacotes UDP
O ping UDP varre portas automaticamente
O ping UDP funciona apenas em redes locais
# Ping UDP para portas padrão nmap -PU 192.168.1.0/24 ```

Ping ARP: nmap -PR

Use solicitações ARP para descoberta de rede local.

# Ping ARP (padrão para redes locais)
nmap -PR 192.168.1.0/24
# Desativar ping ARP
nmap --disable-arp-ping 192.168.1.0/24

Tipos de Varredura de Porta

Varredura SYN TCP: nmap -sS

Esta varredura é mais furtiva, pois o Nmap envia um pacote RST, o que evita múltiplas solicitações e encurta o tempo de varredura.

# Varredura padrão (requer root)
nmap -sS 192.168.1.1
# Varredura SYN em portas específicas
nmap -sS -p 80,443 192.168.1.1
# Varredura SYN rápida
nmap -sS -T4 192.168.1.1

Varredura Connect TCP: nmap -sT

O Nmap envia um pacote TCP para uma porta com a flag SYN definida. Isso informa ao usuário se as portas estão abertas, fechadas ou desconhecidas.

# Varredura connect TCP (não requer root)
nmap -sT 192.168.1.1
# Varredura connect com temporização
nmap -sT -T3 192.168.1.1

Varredura UDP: nmap -sU

Varre portas UDP em busca de serviços.

# Varredura UDP (lenta, requer root)
nmap -sU 192.168.1.1
# Varredura UDP em portas comuns
nmap -sU -p 53,67,68,161 192.168.1.1
# Varredura TCP/UDP combinada
nmap -sS -sU -p T:80,443,U:53,161 192.168.1.1

Varreduras Furtivas (Stealth Scans)

Técnicas avançadas de varredura para evasão.

# Varredura FIN
nmap -sF 192.168.1.1
# Varredura NULL
nmap -sN 192.168.1.1
# Varredura Xmas
nmap -sX 192.168.1.1

Especificação de Porta

Intervalos de Porta: nmap -p

Mire em portas específicas, intervalos ou combinações de portas TCP e UDP para varreduras mais precisas.

# Porta única
nmap -p 80 192.168.1.1
# Múltiplas portas
nmap -p 22,80,443 192.168.1.1
# Intervalo de portas
nmap -p 1-1000 192.168.1.1
# Todas as portas
nmap -p- 192.168.1.1

Portas Específicas de Protocolo

Especifique portas TCP ou UDP explicitamente.

# Apenas portas TCP
nmap -p T:80,443 192.168.1.1
# Apenas portas UDP
nmap -p U:53,161 192.168.1.1
# TCP e UDP misturados
nmap -p T:80,U:53 192.168.1.1

Conjuntos de Portas Comuns

Varra portas frequentemente usadas rapidamente.

# Top 1000 portas (padrão)
nmap 192.168.1.1
# Top 100 portas
nmap --top-ports 100 192.168.1.1
# Varredura rápida (100 portas mais comuns)
nmap -F 192.168.1.1
# Mostrar apenas portas abertas
nmap --open 192.168.1.1
# Mostrar todos os estados das portas
nmap -v 192.168.1.1

Detecção de Serviço e Versão

Detecção de Serviço: nmap -sV

Detecta quais serviços estão em execução e tenta identificar o software, suas versões e configurações.

# Detecção de versão básica
nmap -sV 192.168.1.1
# Detecção de versão agressiva
nmap -sV --version-intensity 9 192.168.1.1
# Detecção de versão leve
nmap -sV --version-intensity 0 192.168.1.1
# Scripts padrão com detecção de versão
nmap -sC -sV 192.168.1.1

Scripts de Serviço

Use scripts para detecção de serviço aprimorada.

# Captura de banner (Banner grabbing)
nmap --script banner 192.168.1.1
# Enumeração de serviço HTTP
nmap --script http-* 192.168.1.1

Detecção de Sistema Operacional: nmap -O

Use impressão digital TCP/IP para adivinhar o sistema operacional de hosts alvo.

# Detecção de SO
nmap -O 192.168.1.1
# Detecção de SO agressiva
nmap -O --osscan-guess 192.168.1.1
# Limitar tentativas de detecção de SO
nmap -O --max-os-tries 1 192.168.1.1

Detecção Abrangente

Combine múltiplas técnicas de detecção.

# Varredura agressiva (SO, versão, scripts)
nmap -A 192.168.1.1
# Varredura agressiva personalizada
nmap -sS -sV -O -sC 192.168.1.1

Temporização e Desempenho

Modelos de Temporização: nmap -T

Ajuste a velocidade da varredura e a furtividade com base no seu ambiente de destino e risco de detecção.

# Paranoico (muito lento, furtivo)
nmap -T0 192.168.1.1
# Furtivo (lento, furtivo)
nmap -T1 192.168.1.1
# Polido (mais lento, menos largura de banda)
nmap -T2 192.168.1.1
# Normal (padrão)
nmap -T3 192.168.1.1
# Agressivo (mais rápido)
nmap -T4 192.168.1.1
# Insano (muito rápido, pode perder resultados)
nmap -T5 192.168.1.1

Opções de Temporização Personalizadas

Ajuste fino de como o Nmap lida com timeouts, novas tentativas e varredura paralela para otimizar o desempenho.

# Definir taxa mínima (pacotes por segundo)
nmap --min-rate 1000 192.168.1.1
# Definir taxa máxima
nmap --max-rate 100 192.168.1.1
# Varredura de host paralela
nmap --min-hostgroup 10 192.168.1.0/24
# Timeout personalizado
nmap --host-timeout 5m 192.168.1.1

Engine de Scripting Nmap (NSE)

Categorias de Scripts: nmap --script

Execute scripts por categoria ou nome.

# Scripts padrão
nmap --script default 192.168.1.1
# Scripts de vulnerabilidade
nmap --script vuln 192.168.1.1
# Scripts de descoberta
nmap --script discovery 192.168.1.1
# Scripts de autenticação
nmap --script auth 192.168.1.1

Scripts Específicos

Mire em vulnerabilidades ou serviços específicos.

# Enumeração SMB
nmap --script smb-enum-* 192.168.1.1
# Métodos HTTP
nmap --script http-methods 192.168.1.1
# Informações de certificado SSL
nmap --script ssl-cert 192.168.1.1

Argumentos de Script

Passe argumentos para personalizar o comportamento do script.

# Força bruta HTTP com lista de palavras personalizada
nmap --script http-brute --script-args
userdb=users.txt,passdb=pass.txt 192.168.1.1
# Força bruta SMB
nmap --script smb-brute 192.168.1.1
# Força bruta DNS
nmap --script dns-brute example.com

Gerenciamento de Scripts

Gerencie e atualize scripts NSE.

# Atualizar banco de dados de scripts
nmap --script-updatedb
# Listar scripts disponíveis
ls /usr/share/nmap/scripts/ | grep http
# Obter ajuda do script
nmap --script-help vuln

Formatos de Saída e Salvamento de Resultados

Formatos de Saída

Salve os resultados em diferentes formatos.

# Saída normal
nmap -oN scan_results.txt 192.168.1.1
# Saída XML
nmap -oX scan_results.xml 192.168.1.1
# Saída Grepable
nmap -oG scan_results.gnmap 192.168.1.1
# Todos os formatos
nmap -oA scan_results 192.168.1.1

Saída Verbosa

Controle a quantidade de informações exibidas.

# Saída verbosa
nmap -v 192.168.1.1
# Muito verbosa
nmap -vv 192.168.1.1
# Modo de depuração
nmap --packet-trace 192.168.1.1

Retomar e Anexar

Continue ou adicione a varreduras anteriores.

# Retomar varredura interrompida
nmap --resume scan_results.gnmap
# Anexar ao arquivo existente
nmap --append-output -oN existing_scan.txt 192.168.1.1

Processamento de Resultados ao Vivo

Combine a saída do Nmap com ferramentas de linha de comando para extrair insights úteis.

# Extrair hosts ativos
nmap -sn 192.168.1.0/24 | grep "Nmap scan report"
# Encontrar servidores web
nmap -p 80,443 --open 192.168.1.0/24 | grep "open"
# Exportar para CSV
nmap -oX - 192.168.1.1 | xsltproc --html -

Técnicas de Evasão de Firewall

Fragmentação de Pacotes: nmap -f

Contorne medidas de segurança usando fragmentação de pacotes, IPs falsificados e métodos de varredura furtivos.

# Fragmentar pacotes
nmap -f 192.168.1.1
# Tamanho de MTU personalizado
nmap --mtu 16 192.168.1.1
# Unidade máxima de transmissão
nmap --mtu 24 192.168.1.1

Varredura com Decoy: nmap -D

Esconda sua varredura entre endereços IP isca (decoy).

# Usar IPs isca
nmap -D 192.168.1.100,192.168.1.101 192.168.1.1
# Iscas aleatórias
nmap -D RND:5 192.168.1.1
# Misturar iscas reais e aleatórias
nmap -D 192.168.1.100,RND:3 192.168.1.1

Manipulação de IP/Porta de Origem

Falsificar informações de origem.

# Falsificar IP de origem
nmap -S 192.168.1.100 192.168.1.1
# Porta de origem personalizada
nmap --source-port 53 192.168.1.1
# Comprimento de dados aleatório
nmap --data-length 25 192.168.1.1

Varredura Ociosa/Zombie: nmap -sI

Use um host zombie para esconder a origem da varredura.

# Varredura zombie (requer host ocioso)
nmap -sI zombie_host 192.168.1.1
# Listar candidatos ociosos
nmap --script ipidseq 192.168.1.0/24

Opções Avançadas de Varredura

Controle de Resolução DNS

Controle como o Nmap lida com pesquisas DNS.

# Desativar resolução DNS
nmap -n 192.168.1.1
# Forçar resolução DNS
nmap -R 192.168.1.1
# Servidores DNS personalizados
nmap --dns-servers 8.8.8.8,1.1.1.1 192.168.1.1

Varredura IPv6: nmap -6

Use estes flags do Nmap para funcionalidade adicional, como suporte a IPv6.

# Varredura IPv6
nmap -6 2001:db8::1
# Varredura de rede IPv6
nmap -6 2001:db8::/32

Interface e Roteamento

Controle a interface de rede e o roteamento.

# Especificar interface de rede
nmap -e eth0 192.168.1.1
# Imprimir interface e rotas
nmap --iflist
# Traceroute
nmap --traceroute 192.168.1.1

Opções Diversas

Flags úteis adicionais.

# Imprimir versão e sair
nmap --version
# Enviar em nível ethernet
nmap --send-eth 192.168.1.1
# Enviar em nível IP
nmap --send-ip 192.168.1.1

Exemplos do Mundo Real

Fluxo de Trabalho de Descoberta de Rede

Processo completo de enumeração de rede.

# Passo 1: Descobrir hosts ativos
nmap -sn 192.168.1.0/24
# Passo 2: Varredura rápida de portas
nmap -sS -T4 --top-ports 1000 192.168.1.0/24
# Passo 3: Varredura detalhada de hosts de interesse
nmap -sS -sV -sC -O 192.168.1.50
# Passo 4: Varredura abrangente
nmap -p- -A -T4 192.168.1.50

Avaliação de Servidor Web

Foco em serviços web e vulnerabilidades.

# Encontrar servidores web
nmap -sS -p 80,443,8080,8443 --open 192.168.1.0/24
# Enumerar serviços HTTP
nmap -sS -sV --script http-* 192.168.1.50
# Verificar vulnerabilidades comuns
nmap --script vuln -p 80,443 192.168.1.50

Enumeração SMB/NetBIOS

O exemplo a seguir enumera o Netbios nas redes alvo.

# Detecção de serviço SMB
nmap -sV -p 139,445 192.168.1.0/24
# Descoberta de nome NetBIOS
nmap -sU --script nbstat -p 137 192.168.1.0/24
# Scripts de enumeração SMB
nmap --script smb-enum-* -p 445 192.168.1.50
# Verificação de vulnerabilidade SMB
nmap --script smb-vuln-* -p 445 192.168.1.50

Avaliação Furtiva

Reconhecimento de baixo perfil.

# Varredura ultra-furtiva
nmap -sS -T0 -f --data-length 200 -D RND:10 192.168.1.1
# Varredura SYN fragmentada
nmap -sS -f --mtu 8 -T1 192.168.1.1

Otimização de Desempenho

Estratégias de Varredura Rápida

Otimize a velocidade da varredura para redes grandes.

# Varredura rápida de rede
nmap -sS -T4 --min-rate 1000 --max-retries 1
192.168.1.0/24
# Varredura de host paralela
nmap --min-hostgroup 50 --max-hostgroup 100
192.168.1.0/24
# Pular operações lentas
nmap -sS -T4 --defeat-rst-ratelimit 192.168.1.0/24

Gerenciamento de Memória e Recursos

Controle o uso de recursos para estabilidade.

# Limitar sondas paralelas
nmap --max-parallelism 10 192.168.1.0/24
# Controlar atrasos na varredura
nmap --scan-delay 100ms 192.168.1.1
# Definir timeout do host
nmap --host-timeout 10m 192.168.1.0/24