unicornscan
Scanner réseau asynchrone haute vitesse. Utilise le scan TCP sans état pour une découverte de ports extrêmement rapide sur de larges plages d'IP, capable de scanner des millions de ports par seconde. Asynchronous high-speed network scanner. Uses stateless TCP scanning for extremely fast port discovery across large IP ranges — can scan millions of ports per second.
↗ https://github.com/dnewman/unicornscanOverview
Unicornscan is an asynchronous network scanner that decouples the sending and receiving of probes for maximum speed. It’s designed for large-scale port scanning and network discovery — scanning entire /8 ranges in reasonable time using stateless SYN scanning.
Basic Usage
TCP SYN scan of a host
unicornscan 10.10.10.1
Scan specific ports
unicornscan 10.10.10.1:80,443,8080
Scan port range
unicornscan 10.10.10.1:1-1024
UDP scan
unicornscan -m U 10.10.10.1:53,161,162
Verbose output
unicornscan -v 10.10.10.1
Scan Options
Set packet rate (packets per second)
unicornscan -r 500 10.10.10.1
High-speed scan
unicornscan -r 10000 10.10.10.0/24
Scan with service detection
unicornscan -I 10.10.10.1:1-65535
Set response wait time
unicornscan -w 20 10.10.10.1
Interface selection
unicornscan -i eth0 10.10.10.1
Network Scanning
Scan entire /24
unicornscan 192.168.1.0/24
Scan common ports on /24
unicornscan 192.168.1.0/24:22,80,443,445,3389
Fast full port scan on single host
unicornscan -r 500 10.10.10.1:1-65535
Scan with timing
unicornscan -r 300 -w 10 192.168.1.0/24:1-1024
Output Formats
Save to file
unicornscan 10.10.10.1 > scan.txt
XML output
unicornscan -X -o scan.xml 10.10.10.1
Greppable output
unicornscan -v 10.10.10.1 2>&1 | grep "open"
Combining with nmap
Use unicornscan for fast discovery, nmap for service detection Step 1: Fast port discovery
unicornscan -r 1000 10.10.10.1:1-65535 2>&1 | \
grep "open" | awk -F'[[ ]' '{print $4}' | cut -d'/' -f1 | sort -n > ports.txt
# Step 2: Detailed nmap scan on open ports
PORTS=$(cat ports.txt | tr '\n' ',')
nmap -sV -sC -p $PORTS 10.10.10.1
Tips
- Much faster than nmap for initial discovery of large IP ranges
- Stateless scanning means no connection tracking — be careful with rate limits
- Use lower rates (
-r 300) on networks you don’t control to avoid disruption - The async design means all ports/hosts are sent simultaneously — tune
-w(wait) for slow networks - For comprehensive results, follow up unicornscan findings with nmap
-sV
Help / Man page
unicornscan [options] target[:ports]
-m MODE Scan mode: T (TCP SYN), U (UDP), A (TCP+UDP)
-i IFACE Network interface
-r RATE Packets per second
-w SECS Wait time for responses (default: 2)
-I Enable immediate mode
-X XML output
-o FILE Output file
-v Verbose
-d Debug
Ports: 1-1024 or 80,443,8080 or 1-65535
Vue d’ensemble
Unicornscan est un scanner réseau asynchrone qui découple l’envoi et la réception des sondes pour une vitesse maximale. Il est conçu pour le scan de ports à grande échelle et la découverte réseau : scanner des plages entières de /8 en un temps raisonnable grâce au scan SYN sans état.
Utilisation de base
# Scan TCP SYN d'un hôte
unicornscan 10.10.10.1
# Scanner des ports spécifiques
unicornscan 10.10.10.1:80,443,8080
# Scanner une plage de ports
unicornscan 10.10.10.1:1-1024
# Scan UDP
unicornscan -m U 10.10.10.1:53,161,162
# Sortie verbeuse
unicornscan -v 10.10.10.1
Options de scan
# Définir le débit de paquets (paquets par seconde)
unicornscan -r 500 10.10.10.1
# Scan haute vitesse
unicornscan -r 10000 10.10.10.0/24
# Scan avec détection de service
unicornscan -I 10.10.10.1:1-65535
# Définir le temps d'attente de réponse
unicornscan -w 20 10.10.10.1
# Sélection d'interface
unicornscan -i eth0 10.10.10.1
Scan réseau
# Scanner un /24 entier
unicornscan 192.168.1.0/24
# Scanner les ports courants sur un /24
unicornscan 192.168.1.0/24:22,80,443,445,3389
# Scan rapide de tous les ports sur un seul hôte
unicornscan -r 500 10.10.10.1:1-65535
# Scan avec timing
unicornscan -r 300 -w 10 192.168.1.0/24:1-1024
Formats de sortie
# Sauvegarder dans un fichier
unicornscan 10.10.10.1 > scan.txt
# Sortie XML
unicornscan -X -o scan.xml 10.10.10.1
# Sortie greppable
unicornscan -v 10.10.10.1 2>&1 | grep "open"
Combinaison avec nmap
Utiliser unicornscan pour une découverte rapide, nmap pour la détection de service. Étape 1 : découverte rapide de ports
unicornscan -r 1000 10.10.10.1:1-65535 2>&1 | \
grep "open" | awk -F'[[ ]' '{print $4}' | cut -d'/' -f1 | sort -n > ports.txt
# Étape 2 : scan nmap détaillé sur les ports ouverts
PORTS=$(cat ports.txt | tr '\n' ',')
nmap -sV -sC -p $PORTS 10.10.10.1
Conseils
- Bien plus rapide que nmap pour la découverte initiale de larges plages d’IP
- Le scan sans état signifie pas de suivi de connexion : attention aux limites de débit
- Utiliser des débits plus faibles (
-r 300) sur des réseaux que vous ne contrôlez pas pour éviter les perturbations - La conception asynchrone signifie que tous les ports/hôtes sont envoyés simultanément : ajuster
-w(attente) pour les réseaux lents - Pour des résultats complets, poursuivre les résultats d’unicornscan avec un nmap
-sV
Aide / Page de manuel
unicornscan [options] target[:ports]
-m MODE Scan mode: T (TCP SYN), U (UDP), A (TCP+UDP)
-i IFACE Network interface
-r RATE Packets per second
-w SECS Wait time for responses (default: 2)
-I Enable immediate mode
-X XML output
-o FILE Output file
-v Verbose
-d Debug
Ports: 1-1024 or 80,443,8080 or 1-65535