
Características • Instalación • Uso • Ejecutar Naabu • Config • Integración de NMAP • Exclusión CDN/WAF • Discords
Naabu es una herramienta de escaneo de puertos escrita en GO que le permite enumerar los puertos válidos para los hosts de manera rápida y confiable. Es una herramienta realmente simple que realiza escaneos sin Syn/Connect/UDP en el host/lista de hosts y enumera todos los puertos que devuelven una respuesta.

naabu -hEsto mostrará ayuda para la herramienta. Aquí están todos los interruptores que admite.
Usage :
naabu [flags]
Flags :
INPUT :
-host string[] hosts to scan ports for (comma-separated)
-list, -l string list of hosts to scan ports (file)
-exclude-hosts, -eh string hosts to exclude from the scan (comma-separated)
-exclude-file, -ef string list of hosts to exclude from scan (file)
PORT :
-port, -p string ports to scan (80,443, 100-200)
-top-ports, -tp string top ports to scan (default 100) [full,100,1000]
-exclude-ports, -ep string ports to exclude from scan (comma-separated)
-ports-file, -pf string list of ports to scan (file)
-port-threshold, -pts int port threshold to skip port scan for the host
-exclude-cdn, -ec skip full port scans for CDN/WAF (only scan for port 80,443)
-display-cdn, -cdn display cdn in use
RATE-LIMIT :
-c int general internal worker threads (default 25)
-rate int packets to send per second (default 1000)
UPDATE :
-up, -update update naabu to latest version
-duc, -disable-update-check disable automatic naabu update check
OUTPUT :
-o, -output string file to write output to (optional)
-j, -json write output in JSON lines format
-csv write output in csv format
CONFIGURATION :
-config string path to the naabu configuration file (default $HOME/.config/naabu/config.yaml)
-scan-all-ips, -sa scan all the IP's associated with DNS record
-ip-version, -iv string[] ip version to scan of hostname (4,6) - (default 4) (default ["4"])
-scan-type, -s string type of port scan (SYN/CONNECT) (default "c")
-source-ip string source ip and port (x.x.x.x:yyy - might not work on OSX)
-interface-list, -il list available interfaces and public ip
-interface, -i string network Interface to use for port scan
-nmap invoke nmap scan on targets (nmap must be installed) - Deprecated
- nmap-cli string nmap command to run on found results (example : -nmap-cli 'nmap -sV')
-r string list of custom resolver dns resolution (comma separated or from file)
-proxy string socks5 proxy (ip[:port] / fqdn[:port]
-proxy-auth string socks5 proxy authentication (username:password)
-resume resume scan using resume.cfg
-stream stream mode (disables resume, nmap, verify, retries, shuffling, etc)
-passive display passive open ports using shodan internetdb api
-irt, -input-read-timeout value timeout on input read (default 3m0s)
-no-stdin Disable Stdin processing
HOST-DISCOVERY :
-sn, -host-discovery Perform Only Host Discovery
- Pn, -skip-host-discovery Skip Host discovery (Deprecated : use -wn/-with-host-discovery instead)
-wn, -with-host-discovery Enable Host discovery
-ps, -probe-tcp-syn string[] TCP SYN Ping (host discovery needs to be enabled)
-pa, -probe-tcp-ack string[] TCP ACK Ping (host discovery needs to be enabled)
-pe, -probe-icmp-echo ICMP echo request Ping (host discovery needs to be enabled)
-pp, -probe-icmp-timestamp ICMP timestamp request Ping (host discovery needs to be enabled)
-pm, -probe-icmp-address-mask ICMP address mask request Ping (host discovery needs to be enabled)
-arp, -arp-ping ARP ping (host discovery needs to be enabled)
-nd, -nd-ping IPv6 Neighbor Discovery (host discovery needs to be enabled)
-rev-ptr Reverse PTR lookup for input ips
OPTIMIZATION :
-retries int number of retries for the port scan (default 3)
-timeout int millisecond to wait before timing out (default 1000)
-warm-up-time int time in seconds between scan phases (default 2)
-ping ping probes for verification of host
-verify validate the ports again with TCP verification
DEBUG :
-health-check, -hc run diagnostic check up
-debug display debugging information
-verbose, -v display verbose output
-no-color, -nc disable colors in CLI output
-silent display only results in output
-version display version of naabu
-stats display stats of the running scan (deprecated)
-si, -stats-interval int number of seconds to wait between showing a statistics update (deprecated) (default 5)
-mp, -metrics-port int port to expose naabu metrics on (default 63636)Descargue el binario listo para ejecutar o instalar con Go
Nota : Antes de instalar Naabu, asegúrese de instalar la biblioteca
libpcappara la captura de paquetes.
Para instalar libcap en Linux : sudo apt install -y libpcap-dev , en mac : brew install libpcap
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latestPara ejecutar la herramienta en un objetivo, simplemente use el siguiente comando.
naabu -host hackerone.com Esto ejecutará la herramienta contra Hackerone.com. Hay una serie de opciones de configuración que puede pasar junto con este comando. El interruptor detenido -v se puede usar para mostrar información detallada.
naabu -host hackerone.com
__
___ ___ ___ _/ / __ __
/ _ / _ / _ / _ / // /
/_//_/_,_/_,_/_.__/_,_/ v2.0.3
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[INF] Running SYN scan with root privileges
[INF] Found 4 ports on host hackerone.com (104.16.100.52)
hackerone.com:80
hackerone.com:443
hackerone.com:8443
hackerone.com:8080 Los puertos para escanear en el host se pueden especificar a través del parámetro -p (los puertos UDP deben expresarse como u:port ). Toma puertos de formato NMAP y ejecuta enumeración en ellos.
naabu -p 80,443,21-23,u:53 -host hackerone.com Por defecto, el NAABU verifica los Top 100 de NMAP. Admite las siguientes listas de puertos incorporadas -
| Bandera | Descripción |
|---|---|
-top-ports 100 | Escanear para el puerto de 100 Top 100 de NMAP |
-top-ports 1000 | Escanear para el puerto NMAP Top 1000 |
-p - | Escanee los puertos completos del 1-65535 |
También puede especificar puertos específicos que le gustaría excluir del escaneo.
naabu -p - -exclude-ports 80,443 Para ejecutar el Naabu en una lista de hosts, se puede usar la opción -list .
naabu -list hosts.txtPara ejecutar el Naabu en un ASN, ya que se puede usar la entrada. Toma la dirección IP disponible para ASN dado y ejecuta la enumeración en ellos.
echo AS14421 | naabu -p 80,443
216.101.17.249:80
216.101.17.249:443
216.101.17.248:443
216.101.17.252:443
216.101.17.251:80
216.101.17.251:443
216.101.17.250:443
216.101.17.250:80 También puede obtener salida en formato JSON usando -json Switch. Este interruptor guarda la salida en el formato de líneas JSON.
naabu -host 104.16.99.52 -json
{"ip":"104.16.99.52","port":443}
{"ip":"104.16.99.52","port":80}Los puertos descubiertos también se pueden canalizar a otras herramientas. Por ejemplo, puede colocar los puertos descubiertos por Naabu a HTTPX que luego encontrará ejecutar servidores HTTP en el host.
echo hackerone.com | naabu -silent | httpx -silent
http://hackerone.com:8443
http://hackerone.com:443
http://hackerone.com:8080
http://hackerone.com:80 La velocidad se puede controlar cambiando el valor del indicador rate que representa el número de paquetes por segundo. Aumentarlo mientras procesa hosts puede conducir a mayores tasas falsas positivas. Por lo tanto, se recomienda mantenerlo en una cantidad razonable.
Naabu admite IPv4 e IPv6. Ambos rangos se pueden canalizar como entrada. Si se usa IPv6, la conectividad debe configurarse correctamente, y la interfaz de red debe tener una dirección IPv6 asignada ( inet6 ) y una puerta de enlace predeterminada.
echo hackerone.com | dnsx -resp-only -a -aaaa -silent | naabu -p 80 -silent
104.16.99.52:80
104.16.100.52:80
2606:4700::6810:6434:80
2606:4700::6810:6334:80 La opción -ip-version 6 hace que la herramienta use direcciones IPv6 al resolver los nombres de dominio.
echo hackerone.com | ./naabu -p 80 -ip-version 6
__
___ ___ ___ _/ / __ __
/ _ / _ / _ / _ / // /
/_//_/_,_/_,_/_.__/_,_/ v2.0.8
projectdiscovery.io
Use with caution. You are responsible for your actions
Developers assume no liability and are not responsible for any misuse or damage.
[INF] Running CONNECT scan with non root privileges
[INF] Found 1 ports on host hackerone.com (2606:4700::6810:6334)
hackerone.com:80 Para escanear todas las IP de ambas versión, ip-version 4,6 se puede usar junto con el indicador -scan-all-ips .
echo hackerone.com | ./naabu -iv 4,6 -sa -p 80 -silent
[INF] Found 1 ports on host hackerone.com (104.16.100.52)
hackerone.com:80
[INF] Found 1 ports on host hackerone.com (104.16.99.52)
hackerone.com:80
[INF] Found 1 ports on host hackerone.com (2606:4700::6810:6334)
hackerone.com:80
[INF] Found 1 ports on host hackerone.com (2606:4700::6810:6434)
hackerone.com:80 Naabu opcionalmente admite múltiples opciones para realizar el descubrimiento del host. El descubrimiento del host es opcional y se puede habilitar con la bandera -wn . -sn Flag instruye a la herramienta para realizar solo el descubrimiento del host.
Opciones disponibles para realizar el descubrimiento del anfitrión:
-arp )-ps 80 )-pa 443 )-pe )-pp )-pm )-nd ) Naabu admite el archivo de configuración como el valor predeterminado ubicado en $HOME/.config/naabu/config.yaml , le permite definir cualquier indicador en el archivo de configuración y establecer valores predeterminados para incluir para todos los escaneos.
Tenemos soporte integrado de NMAP para el descubrimiento de servicios o cualquier escaneos adicionales compatibles con NMAP en los resultados encontrados por Naabu, asegúrese de tener instalado nmap para usar esta función.
Para usar, el indicador nmap-cli se puede usar seguido por el comando nmap, por ejemplo:-
echo hackerone.com | naabu -nmap-cli 'nmap -sV -oX nmap-output'
__
___ ___ ___ _/ / __ __
/ _ / _ / _ / _ / // /
/_//_/_,_/_,_/_.__/_,_/ v2.0.0
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[INF] Running TCP/ICMP/SYN scan with root privileges
[INF] Found 4 ports on host hackerone.com (104.16.99.52)
hackerone.com:443
hackerone.com:80
hackerone.com:8443
hackerone.com:8080
[INF] Running nmap command: nmap -sV -p 80,8443,8080,443 104.16.99.52
Starting Nmap 7.01 ( https://nmap.org ) at 2020-09-23 05:02 UTC
Nmap scan report for 104.16.99.52
Host is up (0.0021s latency).
PORT STATE SERVICE VERSION
80/tcp open http cloudflare
443/tcp open ssl/https cloudflare
8080/tcp open http-proxy cloudflare
8443/tcp open ssl/https-alt cloudflare Naabu también es compatible con la exclusión de CDN/WAF IPS escaneada. Si se usa, solo se escanean los puertos 80 y 443 para esos IP. Esta característica se puede habilitar utilizando el indicador exclude-cdn .
Actualmente, cloudflare , akamai , incapsula y sucuri IPS son compatibles con las exclusiones.
Naabu expone la información de escaneo JSON en un puerto local vinculado a localhost en http://localhost:63636/metrics (el puerto se puede cambiar a través de la bandera -metrics-port )
El siguiente programa de muestra escanea el puerto 80 de scanme.sh . Los resultados se devuelven a través de la devolución de llamada OnResult :
package main
import (
"log"
"github.com/projectdiscovery/goflags"
"github.com/projectdiscovery/naabu/v2/pkg/result"
"github.com/projectdiscovery/naabu/v2/pkg/runner"
)
func main () {
options := runner. Options {
Host : goflags. StringSlice { "scanme.sh" },
ScanType : "s" ,
OnResult : func ( hr * result. HostResult ) {
log . Println ( hr . Host , hr . Ports )
},
Ports : "80" ,
}
naabuRunner , err := runner . NewRunner ( & options )
if err != nil {
log . Fatal ( err )
}
defer naabuRunner . Close ()
naabuRunner . RunEnumeration ()
}Naabu está hecho con? por el equipo de Discostería Project. Las contribuciones de la comunidad han hecho del proyecto lo que es.
Vea el archivo gracias.md para obtener más detalles.