Nmap e Escaneamento de Redes
Aula 2 de 7
Nmap — Network Mapper
Host Discovery
Antes de escanear portas, descubra hosts ativos:
# Descobrir hosts ativos na sub-rede
nmap -sn 192.168.1.0/24 # Ping sweep (ICMP + TCP 80/443 + ARP)
nmap -sn -PS 192.168.1.0/24 # TCP SYN ping (porta 80)
nmap -sn -PA 192.168.1.0/24 # TCP ACK ping
nmap -sn -PE 192.168.1.0/24 # ICMP Echo ping
nmap -sn -PP 192.168.1.0/24 # ICMP Timestamp ping
nmap -sn -PR 192.168.1.0/24 # ARP ping (recomendado na LAN)
Port Scanning
# TCP SYN scan (padrão, rápido, semi-conexão)
nmap -sS 192.168.1.1
# TCP Connect scan (completo, 3-way handshake)
nmap -sT 192.168.1.1
# UDP scan (lento — pacotes sem resposta são filtrados/timeout)
nmap -sU 192.168.1.1
# Stealth scan (FIN, NULL, Xmas — para bypass de firewalls)
nmap -sF 192.168.1.1 # FIN: apenas flag FIN
nmap -sN 192.168.1.1 # NULL: sem flags
nmap -sX 192.168.1.1 # Xmas: FIN + PSH + URG
# Especificar portas
nmap -p 80,443 192.168.1.1 # Portas específicas
nmap -p 1-1000 192.168.1.1 # Range
nmap -p- 192.168.1.1 # Todas as portas (65535)
nmap --top-ports 100 192.168.1.1 # Top 100 portas
Service Detection e OS Detection
# Service/Version detection
nmap -sV 192.168.1.1 # Identificar versões dos serviços
nmap -sV --version-intensity 9 # Intensidade máxima (mais preciso, mais lento)
# OS Detection
nmap -O 192.168.1.1 # Identificar sistema operacional
nmap -O --osscan-guess 192.168.1.1 # Forçar palpite (menos preciso)
# Combinação comum
nmap -sS -sV -O 192.168.1.1
NSE Scripts
# Categorias de scripts
nmap --script-help all # Listar todos os scripts
# Categorias: auth, broadcast, default, discovery, dos, exploit,
# external, fuzzer, intrusive, malware, safe, version, vuln
# Scripts por categoria
nmap --script=vuln 192.168.1.1 # Vulnerabilidades
nmap --script=safe 192.168.1.1 # Scripts seguros (não intrusivos)
nmap --script=auth 192.168.1.1 # Testes de autenticação
# Scripts específicos
nmap --script=http-enum 192.168.1.1 # Enumeração HTTP
nmap --script=smb-enum-shares 192.168.1.1 # Compartilhamentos SMB
nmap --script=ssl-heartbleed 192.168.1.1 # Heartbleed
# Vários scripts
nmap --script=vuln,safe,discovery 192.168.1.1
Timing Templates
# Templates de velocidade (T0 = mais lento, T5 = mais rápido)
nmap -T0 192.168.1.1 # Paranoid (evasão IDS)
nmap -T1 192.168.1.1 # Sneaky
nmap -T2 192.168.1.1 # Polite
nmap -T3 192.168.1.1 # Normal (padrão)
nmap -T4 192.168.1.1 # Aggressive (recomendado LAN)
nmap -T5 192.168.1.1 # Insane (pode perder portas)
Output Formats
nmap -oN scan.txt 192.168.1.1 # Normal
nmap -oX scan.xml 192.168.1.1 # XML (parseável)
nmap -oG scan.gnmap 192.168.1.1 # Grepable
nmap -oA scan 192.168.1.1 # Todos os formatos
Evasão
# Fragmentação
nmap -f 192.168.1.1 # Fragmentar pacotes (bypass simples)
nmap --mtu 16 192.168.1.1 # Tamanho MTU personalizado
# Decoy (IPs falsos)
nmap -D RND:10 192.168.1.1 # 10 decoys aleatórios
# Source port manipulation
nmap --source-port 53 192.168.1.1 # Disfarçar como DNS
# Spoof MAC
nmap --spoof-mac Cisco 192.168.1.1 # Spoof MAC Cisco
# Intervalo entre pacotes
nmap --scan-delay 5s 192.168.1.1 # 5 segundos entre pacotes
Masscan
# Scanner de altíssima velocidade (pode escanear toda internet)
masscan 192.168.1.0/24 -p80,443
masscan 10.0.0.0/8 -p22 --rate=10000 # 10k pacotes/segundo
masscan 0.0.0.0/0 -p443 --rate=1000000 # 1M pps (cuidado!)
masscan --echo > config.conf # Salvar configuração
masscan -c config.conf # Usar arquivo config
Unicornscan
# Scanner avançado com estatísticas TCP/IP
unicornscan 192.168.1.1:1-65535
unicornscan -mT 192.168.1.1 # TCP scan
unicornscan -mU 192.168.1.1 # UDP scan
unicornscan -Iv 192.168.1.1 # Verbose + informações
Lab: Escaneamento Completo
# 1. Host Discovery na rede local
nmap -sn 192.168.1.0/24
# 2. Scan completo de portas com service detection
nmap -sS -sV -p- 192.168.1.1
# 3. OS Detection
nmap -O 192.168.1.1
# 4. Scripts de vulnerabilidade
nmap --script=vuln 192.168.1.1
# 5. Salvar saída em XML para uso com outras ferramentas
nmap -sS -sV -O --script=default -oA scan_result 192.168.1.1
# 6. Comparar resultados
nmap --script=http-enum 192.168.1.1
Nmap é a ferramenta mais versátil de scanning. Domine flags, NSE e evasão. Para redes gigantes, use masscan. Sempre documente os resultados em XML para integração com outras ferramentas.