Aprenda a usar o Nmap de forma prática e eficiente
Aprenda a usar o Nmap, a ferramenta mais poderosa para mapeamento de redes e descoberta de vulnerabilidades. Este site oferece tutoriais práticos e dicas para iniciantes e profissionais que desejam explorar redes de forma eficiente e segura.
O que é o Nmap? O Nmap (Network Mapper) é uma ferramenta de código aberto usada para escanear redes, identificar portas abertas, serviços e possíveis vulnerabilidades.
Instalação:
sudo apt install nmap
(Debian/Ubuntu). Baixe em nmap.org/download.html#linux-rpm para outras distribuições.brew install nmap
.sudo apt install nmap
(Debian/Ubuntu) ou baixe o tarball em nmap-7.94.tar.bz2.brew install nmap
.Aqui estão exemplos práticos de comandos Nmap para escanear redes:
nmap -D RND:20 --open -sS --top-ports=100 exemplo.com.br
Explicação: Usa 20 IPs aleatórios como iscas, mostra apenas portas abertas, escaneia as 100 portas mais comuns com técnica SYN.
nmap -D RND:20 --open -sV -p21,22,53,111 exemplo.com.br
Explicação: Identifica versões de serviços nas portas 21 (FTP), 22 (SSH), 53 (DNS) e 111 (RPC).
nmap -sV --script vulners -D RND:20 --open -sS --top-ports=100 exemplo.com.br
Explicação: Combina escaneamento discreto com o script Vulners para identificar vulnerabilidades.
nmap -D RND:20 --open -sS --top-ports=100 exemplo.com.br -oN portas-abertas.txt
Explicação: Escaneia as 100 portas mais comuns, mostra apenas as abertas e salva o resultado no arquivo portas-abertas.txt
.
nmap -D RND:20 --open -sS -f --top-ports=50 exemplo.com.br
Explicação: Adiciona -f
para fragmentar pacotes, tornando o escaneamento mais difícil de ser detectado por firewalls.
nmap -D RND:20 --open -sS --scan-delay 2s --top-ports=100 exemplo.com.br
Explicação: Inclui um atraso de 2 segundos (--scan-delay 2s
) entre os pacotes para evitar detecção por sistemas de proteção.
cat /usr/share/nmap/scripts/vulners.nse | grep script
nmap -sV --script vulners businesscorp.com.br
Explicação: O primeiro comando verifica o conteúdo do script vulners.nse
no Linux; o segundo usa o script para buscar vulnerabilidades em businesscorp.com.br
.
nmap -p 139,445 --script smb-os-discovery,smb-enum-shares,smb-enum-users -Pn 10.10.9.116
Explicação: Escaneia as portas 139 e 445 (SMB), usa scripts NSE para descobrir o sistema operacional (smb-os-discovery
), listar compartilhamentos (smb-enum-shares
) e enumerar usuários (smb-enum-users
). O -Pn
desativa o ping para evitar bloqueios.
nmap -p 445 --script smb-vuln-ms17-010 -Pn 10.10.9.116
Explicação: Verifica se o alvo é vulnerável ao exploit EternalBlue (MS17-010) na porta 445, comum em sistemas Windows. O -Pn
ignora o ping para garantir o escaneamento.
nmap -iR 100 -Pn -p 80
Explicação: Escaneia 100 hosts aleatórios (-iR 100
) na porta 80 (HTTP), ignorando o ping (-Pn
) para garantir que todos sejam verificados, útil para explorar a internet.
nmap -A -v -oA resultado_scan scanme.nmap.org
Explicação: Usa -A
para ativar detecção de SO, versão, scripts e traceroute; -v
aumenta a verbosidade; -oA resultado_scan
salva a saída em normal, XML e Grepable ao mesmo tempo.
Como evitar ser bloqueado pelo Firewall?
-D RND:20
para mascarar sua origem com IPs falsos.--scan-delay 1s
ou mais para reduzir a velocidade e evitar detecção.-f
para fragmentar pacotes e burlar sistemas de proteção.-oN nome-arquivo.txt
para análise posterior.-Pn
para ignorar o ping e escanear hosts que bloqueiam ICMP.-iR
para escanear alvos aleatórios e explorar redes desconhecidas.Nmap 7.92SVN (https://nmap.org)
Uso: nmap [Tipo (s) de digitalização] [Opções] {especificação de destino}
Pode passar nomes de host, endereços IP, redes, etc. Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254 -iL
ESPECIFICAÇÃO DO ALVO
: entrada da lista de hosts / redes -iR : Escolha alvos aleatórios --exclude : Exclui hosts / redes --excludefile : Excluir lista do arquivo DESCOBERTA DO HOST
-sL: Listar Varredura - simplesmente lista os alvos para varredura -sn: Ping Scan - desativa a varredura de portas -Pn: trata todos os hosts como online - ignora a descoberta de host -PS / PA / PU / PY [lista de portas]: descoberta TCP SYN / ACK, UDP ou SCTP para determinadas portas -PE / PP / PM: testes de descoberta de solicitação de eco, carimbo de data / hora e máscara de rede ICMP -PO [lista de protocolos]: Ping do protocolo IP -n / -R: Nunca faz resolução de DNS / Sempre resolve [padrão: às vezes] --dns-servers: Especifique servidores DNS personalizados --system-dns: usa o resolvedor DNS do sistema operacional --traceroute: rastreia o caminho de salto para cada host TÉCNICAS DE VARREDURA
-sS / sT / sA / sW / sM: scans TCP SYN / Conectar () / ACK / Janela / Maimon -sU: UDP Scan -sN / sF / sX: scans TCP Null, FIN e Xmas --scanflags: personaliza sinalizadores de varredura TCP -sI : varredura ociosa -sY / sZ: varreduras SCTP INIT / COOKIE-ECHO -sO: varredura de protocolo IP -b : varredura de rejeição de FTP ESPECIFICAÇÃO DA PORTA E ORDEM DE VARREDURA
-p: verifica apenas as portas especificadas Ex: -p22; -p1-65535; -p U: 53.111.137, T: 21-25.80.139.8080, S: 9 --exclude-ports : Exclui as portas especificadas da varredura -F: Modo rápido - faz a varredura de menos portas do que a varredura padrão -r: verifica as portas consecutivamente - não randomiza --top-ports : verifica portas mais comuns --port-ratio : verifica as portas mais comuns do que DETECÇÃO DE SERVIÇO / VERSÃO
-sV: Sondar portas abertas para determinar informações de serviço / versão --version-Intensity: Defina de 0 (claro) a 9 (tente todas as sondas) --version-light: Limite às sondas mais prováveis (intensidade 2) --version-all: Experimente cada uma das sondas (intensidade 9) --version-trace: Mostra a atividade de verificação de versão detalhada (para depuração) SCRIPT SCAN
-sC: equivalente a --script = default --script =: é uma lista separada por vírgulas de diretórios,arquivos de script ou categorias de script --script-args = : fornece argumentos para scripts --script-args-file = filename: fornece argumentos de script NSE em um arquivo --script-trace: Mostra todos os dados enviados e recebidos --script-updatedb: atualiza o banco de dados do script. --script-help = Mostra ajuda sobre scripts.Lua scripts é uma lista separada por vírgulas de arquivos de script ou categorias de script DETECÇÃO DE SO
-O: Ativar detecção de sistema operacional --osscan-limit: Limita a detecção de SO a alvos promissores --osscan-guess: Adivinha o SO de forma mais agressivaTEMPO E DESEMPENHO
As opções que levamestão em segundos, ou acrescentam 'ms' (milissegundos), 's' (segundos), 'm' (minutos) ou 'h' (horas) para o valor (por exemplo, 30m). -T <0-5>: Definir modelo de tempo (quanto mais alto, mais rápido) --min-hostgroup / max-hostgroup : Tamanhos de grupos de varredura de hosts paralelos --min-parallelism / max-parallelism : paralelização de teste --min-rtt-timeout / max-rtt-timeout / initial-rtt-timeout