MDstable
NoteSnippetChecklistPlaybook

Nmap — Service Scanning

Commandes nmap complètes pour la phase de scanning réseau en pentest

snippetintermediate 2025-05-10 3 min read
nmapscanningpentestreconnaissanceports

Objectifs de la phase

Identifier les hôtes actifs, ports ouverts et services exposés sur la cible.

⚠ Attention — Toujours vérifier le périmètre autorisé avant tout scan. Scan non-autorisé = infraction pénale.

Découverte d'hôtes

bash
Variables
{{TARGET}}
{{OUTPUT_DIR}}
# Ping sweep — hosts actifs
nmap -sn {{TARGET}} -oG {{OUTPUT_DIR}}/hosts-up.txt
# ARP scan (local network)
nmap -PR -sn {{TARGET}} -oG {{OUTPUT_DIR}}/arp-hosts.txt
# Sans ping (bypass firewall)
nmap -Pn {{TARGET}} --open

Scan de ports TCP

bash
Variables
{{TARGET}}
{{OUTPUT_DIR}}
# Scan rapide top 1000 ports
nmap -sS -T4 {{TARGET}} -oA {{OUTPUT_DIR}}/quick
# Scan complet tous ports + scripts + versions
nmap -sC -sV -p- -T4 {{TARGET}} -oA {{OUTPUT_DIR}}/full
# Scan ciblé sur ports spécifiques
nmap -sC -sV -p 212223258011013914344344533063389543280808443 {{TARGET}} -oA {{OUTPUT_DIR}}/targeted

Scan UDP

bash
Variables
{{TARGET}}
{{OUTPUT_DIR}}
# UDP top 1000 (lent, attendre)
nmap -sU --top-ports 1000 -T2 {{TARGET}} -oA {{OUTPUT_DIR}}/udp
# UDP ciblé services critiques
nmap -sU -p 53676869111123137138161500 {{TARGET}}

Scripts NSE utiles

bash
Variables
{{TARGET}}
{{OUTPUT_DIR}}
# Vulnérabilités connues
nmap --script vuln {{TARGET}} -oN {{OUTPUT_DIR}}/vuln.txt
# Enumération SMB
nmap --script smb-enum-shares,smb-enum-users -p 139445 {{TARGET}}
# Enumération HTTP
nmap --script http-title,http-headers,http-robots.txt -p 8044380808443 {{TARGET}}
# SNMP
nmap -sU --script snmp-info -p 161 {{TARGET}}
# SSL/TLS
nmap --script ssl-enum-ciphers -p 443 {{TARGET}}

Evasion et furtivité

bash
Variables
{{TARGET}}
# Fragmentation paquets
nmap -f -sS {{TARGET}}
# Timing lent (IDS bypass)
nmap -T1 --scan-delay {{TARGET}}
# Decoy scan
nmap -D RND5 {{TARGET}}
# Source port spoofing
nmap --source-port 53 {{TARGET}}
Checklist scanning0/8

Parsing des résultats

bash
Variables
{{OUTPUT_DIR}}
# Extraire ports ouverts depuis grepable output
grep "Ports:" {{OUTPUT_DIR}}/full.gnmap | grep -oP '\d+/open' | cut -d/ -f1 | sort -nu
# Synthèse rapide
grep "open" {{OUTPUT_DIR}}/full.nmap | grep -v "#"
# Convertir en liste pour metasploit
grep "open" {{OUTPUT_DIR}}/full.nmap | awk '{print $1}' | sort -u > {{OUTPUT_DIR}}/open-hosts.txt

Pièges fréquents

  • UDP scan lent : normal, réduire avec --top-ports 200 si manque de temps
  • IDS/IPS : sur environnement protégé, passer à T1-T2 et fragmenter
  • Firewall stateful : utiliser --source-port 53 ou -Pn si ping bloqué
  • False negatives : toujours compléter nmap avec masscan sur -p-
OPS·BRAIN v1.075 notes · Securitylocal