naabu

Scanner de ports rapide de ProjectDiscovery. Scan SYN/CONNECT avec une sortie simple, parfait pour être chaîné avec httpx, nuclei, ou d'autres outils de l'écosystème PD. Fast port scanner from ProjectDiscovery. SYN/CONNECT scanning with simple output perfect for piping into httpx, nuclei, or other tools in the PD ecosystem.

↗ https://github.com/projectdiscovery/naabu

Overview

naabu is a fast port scanner built in Go by ProjectDiscovery. It excels at quickly identifying open ports across large target lists and integrates naturally with httpx, nuclei, and other tools in the ProjectDiscovery ecosystem.

Basic Scanning

Scan default top-100 ports

naabu -host target.com

Scan specific ports

naabu -host target.com -p 80,443,8080,8443

Scan all ports

naabu -host target.com -p -

Scan top 1000 ports

naabu -host target.com -top-ports 1000

From file of hosts

naabu -l hosts.txt -p 80,443

CIDR range

naabu -host 10.10.10.0/24 -p 80,443,22

Silent output (IPs and ports only, for piping)

naabu -host target.com -silent

SYN vs Connect Scanning

SYN scan (requires root, faster, stealthier)

sudo naabu -host target.com -s s

Connect scan (no root needed)

naabu -host target.com -s c

Output Formats

JSON output

naabu -host target.com -json -o results.json

Save to file

naabu -host target.com -o ports.txt

Output as host:port (for httpx)

naabu -host target.com -silent

→ → target.com:80 → target.com:443

Pipeline Integration

Port scan → probe with httpx

naabu -host target.com -silent | httpx -silent

Subdomain → port scan → httpx → nuclei

subfinder -d target.com -silent | naabu -silent | httpx -silent | nuclei -t cves/

Scan multiple resolved subdomains

subfinder -d target.com | naabu -p 80,443,8080,8443 | httpx -status-code -title

Resolve domains from file, then port scan

naabu -l subdomains.txt -p 80,443,8080,8443,3000,5000 -silent

Rate Control & Evasion

Rate limit (packets per second)

naabu -host target.com -rate 1000

Timeout per port

naabu -host target.com -timeout 5000

Retries for accuracy

naabu -host target.com -retries 3

Skip host discovery

naabu -host target.com -skip-host-discovery

Exclude ports

naabu -host target.com -p - -exclude-ports 80,443

Tips

  • Unlike nmap, naabu doesn’t do service/version detection — use nmap -sCV on results for details
  • -silent is essential in pipelines — suppresses the banner and progress
  • naabu is significantly faster than nmap for pure port discovery on large host lists
  • Use sudo for SYN scanning — gives better accuracy and speed
Help / Man page
naabu [flags]

Target:
  -host HOST        Single host
  -l FILE           File of hosts
  -eh FILE          Exclude hosts file

Port:
  -p PORTS          Port list (80,443 or 0-65535 or -)
  -top-ports N      Top N ports
  -exclude-ports P  Exclude specific ports

Scan:
  -s TYPE           s=SYN, c=CONNECT (default: s)
  -skip-host-discovery  Skip ping check

Rate:
  -rate N           Packets per second (default: 1000)
  -retries N        Retries (default: 3)
  -timeout N        Timeout in ms (default: 1000)
  -c N              Concurrent goroutines

Output:
  -o FILE           Output file
  -json             JSON output
  -silent           Silent mode (host:port only)
  -v                Verbose

Vue d’ensemble

naabu est un scanner de ports rapide écrit en Go par ProjectDiscovery. Il excelle pour identifier rapidement les ports ouverts sur de grandes listes de cibles et s’intègre naturellement avec httpx, nuclei, et les autres outils de l’écosystème ProjectDiscovery.

Scan de base

# Scanner le top 100 des ports par défaut
naabu -host target.com

# Scanner des ports spécifiques
naabu -host target.com -p 80,443,8080,8443

# Scanner tous les ports
naabu -host target.com -p -

# Scanner le top 1000 des ports
naabu -host target.com -top-ports 1000

# Depuis un fichier d'hôtes
naabu -l hosts.txt -p 80,443

# Plage CIDR
naabu -host 10.10.10.0/24 -p 80,443,22

# Sortie silencieuse (IPs et ports uniquement, pour le chaînage)
naabu -host target.com -silent

Scan SYN vs Connect

# Scan SYN (nécessite root, plus rapide, plus discret)
sudo naabu -host target.com -s s

# Scan Connect (pas besoin de root)
naabu -host target.com -s c

Formats de sortie

# Sortie JSON
naabu -host target.com -json -o results.json

# Sauvegarder dans un fichier
naabu -host target.com -o ports.txt

# Sortie au format host:port (pour httpx)
naabu -host target.com -silent
# -> target.com:80
# -> target.com:443

Intégration en pipeline

# Scan de ports -> sonde avec httpx
naabu -host target.com -silent | httpx -silent

# Sous-domaine -> scan de ports -> httpx -> nuclei
subfinder -d target.com -silent | naabu -silent | httpx -silent | nuclei -t cves/

# Scanner plusieurs sous-domaines résolus
subfinder -d target.com | naabu -p 80,443,8080,8443 | httpx -status-code -title

# Résoudre les domaines depuis un fichier, puis scanner les ports
naabu -l subdomains.txt -p 80,443,8080,8443,3000,5000 -silent

Contrôle du débit et évasion

# Limiter le débit (paquets par seconde)
naabu -host target.com -rate 1000

# Timeout par port
naabu -host target.com -timeout 5000

# Nombre de tentatives pour la précision
naabu -host target.com -retries 3

# Ignorer la découverte d'hôtes
naabu -host target.com -skip-host-discovery

# Exclure des ports
naabu -host target.com -p - -exclude-ports 80,443

Conseils

  • Contrairement à nmap, naabu ne fait pas de détection de service/version : utilisez nmap -sCV sur les résultats pour plus de détails
  • -silent est essentiel dans les pipelines : supprime la bannière et la progression
  • naabu est nettement plus rapide que nmap pour la simple découverte de ports sur de grandes listes d’hôtes
  • Utilisez sudo pour le scan SYN : meilleure précision et vitesse
Aide / Page de manuel
naabu [flags]

Target:
  -host HOST        Single host
  -l FILE           File of hosts
  -eh FILE          Exclude hosts file

Port:
  -p PORTS          Port list (80,443 or 0-65535 or -)
  -top-ports N      Top N ports
  -exclude-ports P  Exclude specific ports

Scan:
  -s TYPE           s=SYN, c=CONNECT (default: s)
  -skip-host-discovery  Skip ping check

Rate:
  -rate N           Packets per second (default: 1000)
  -retries N        Retries (default: 3)
  -timeout N        Timeout in ms (default: 1000)
  -c N              Concurrent goroutines

Output:
  -o FILE           Output file
  -json             JSON output
  -silent           Silent mode (host:port only)
  -v                Verbose