Description
Naabu is a port scanning tool written in Go that allows you to enumerate valid ports for hosts in a fast and reliable manner. It supports SYN/CONNECT scanning with service detection.
Installation
BASH
# Using Go
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latest
# Using Docker
docker pull projectdiscovery/naabu
# Homebrew
brew install naabu
Basic Usage
BASH
# Scan a single host
naabu -host target.com
# Scan specific ports
naabu -host target.com -p 80,443,8080
# Scan from file
naabu -list hosts.txt
# Top ports
naabu -host target.com -top-ports 100
Advanced Usage
BASH
# SYN scan (requires root)
sudo naabu -host target.com -scan-type s
# Output in JSON
naabu -host target.com -json -o results.json
# Pipe from subfinder
subfinder -d target.com -silent | naabu -silent
# Exclude ports
naabu -host target.com -exclude-ports 80,443
# Service detection with Nmap integration
naabu -host target.com -nmap-cli "nmap -sV"
# Rate limiting
naabu -host target.com -rate 1000
Common Workflows
BASH
# Full recon pipeline
subfinder -d target.com -silent | naabu -silent | httpx -silent
# Port scan then service enum
naabu -host target.com -top-ports 1000 -silent | naabu -host - -nmap-cli "nmap -sV -sC"