kb.erickguedes.com
Kali Linux: Ferramentas de Segurança Ofensiva

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.