
Recursos • Instalação • Uso • Excunhando Naabu • Config • Integração do NMAP • Exclusão de CDN/WAF • Discord
Naabu é uma ferramenta de varredura por porta escrita em Go que permite enumerar portas válidas para hosts de maneira rápida e confiável. É uma ferramenta realmente simples que faz varreduras rápidas do SYN/CONNECT/UDP no host/lista de hosts e lista todas as portas que retornam uma resposta.

naabu -hIsso exibirá ajuda para a ferramenta. Aqui estão todos os interruptores que suporta.
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)Faça o download do Binário / Docker pronto para executar ou instalar com Go Go
Nota : Antes de instalar o Naabu, instale a biblioteca
libpcappara captura de pacotes.
Para instalar o LIBCAP no Linux : sudo apt install -y libpcap-dev , no mac : brew install libpcap
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latestPara executar a ferramenta em um destino, basta usar o seguinte comando.
naabu -host hackerone.com Isso executará a ferramenta contra o hackerone.com. Existem várias opções de configuração que você pode passar junto com este comando. O interruptor verbose -v pode ser usado para exibir informações detalhadas.
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 As portas a serem digitalizadas no host podem ser especificadas via parâmetro -p (as portas UDP devem ser expressas como u:port ). Ele pega portas de formato NMAP e executa enumeração nelas.
naabu -p 80,443,21-23,u:53 -host hackerone.com Por padrão, o Naabu verifica as Top 100 portas do NMAP. Ele suporta as seguintes listas de portas embutidas -
| Bandeira | Descrição |
|---|---|
-top-ports 100 | Digitalizar para o NMAP Top 100 Port |
-top-ports 1000 | Digitalizar para o NMAP Top 1000 Port |
-p - | Digitalizar portas completas de 1-65535 |
Você também pode especificar portas específicas que deseja excluir da verificação.
naabu -p - -exclude-ports 80,443 Para executar o Naabu em uma lista de hosts, a opção -list pode ser usada.
naabu -list hosts.txtPara executar o Naabu em um ASN, conforme a entrada pode ser usada. Ele pega o endereço IP disponível para o ASN fornecido e executa a enumeração neles.
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 Você também pode obter saída no formato JSON usando -json Switch. Esse interruptor salva a saída no formato de linhas JSON.
naabu -host 104.16.99.52 -json
{"ip":"104.16.99.52","port":443}
{"ip":"104.16.99.52","port":80}As portas descobertas também podem ser canalizadas para outras ferramentas. Por exemplo, você pode canalizar as portas descobertas por Naabu para HTTPX, que encontrarão os servidores HTTP em execução no host.
echo hackerone.com | naabu -silent | httpx -silent
http://hackerone.com:8443
http://hackerone.com:443
http://hackerone.com:8080
http://hackerone.com:80 A velocidade pode ser controlada alterando o valor do sinalizador rate que representa o número de pacotes por segundo. Aumentá-lo durante o processamento de hosts pode levar ao aumento das taxas falsas positivas. Portanto, é recomendável mantê -lo em uma quantidade razoável.
O NAABU suporta IPv4 e IPv6. Ambas as faixas podem ser canalizadas como entrada. Se o IPv6 for usado, a conectividade deve ser configurada corretamente e a interface de rede deve ter um endereço IPv6 atribuído ( inet6 ) e um gateway padrão.
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 A opção -ip-version 6 faz com que a ferramenta use endereços IPv6 ao resolver nomes de domínio.
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 digitalizar todos os IPs de ambas as versões, ip-version 4,6 pode ser usada junto com o sinalizador -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 A Naabu suporta opcionalmente várias opções para executar a descoberta do host. A descoberta do host é opcional e pode ser ativada com o sinalizador -wn . -sn sinalizador instrui a ferramenta para executar apenas a descoberta do host.
Opções disponíveis para executar a descoberta do host:
-arp )-ps 80 )-pa 443 )-pe )-pp )-pm )-nd ) O NAABU suporta o arquivo de configuração como padrão localizado em $HOME/.config/naabu/config.yaml , ele permite definir qualquer sinalizador no arquivo de configuração e definir valores padrão a serem incluídos para todas as varreduras.
Integramos o suporte ao NMAP para a descoberta de serviços ou quaisquer varreduras adicionais suportadas pelo NMAP nos resultados encontrados da Naabu, verifique se você está instalado nmap para usar esse recurso.
Para usar, o sinalizador nmap-cli pode ser usado seguido pelo comando nmap, por exemplo:-
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 A Naabu também suporta excluir a CDN/WAF IPS sendo digitalizada. Se usado, apenas 80 e 443 portas são digitalizadas para esses IPs. Esse recurso pode ser ativado usando o sinalizador exclude-cdn .
Atualmente, os IPs cloudflare , akamai , incapsula e sucuri são suportados para exclusões.
Naabu expõe as informações de varredura JSON em uma porta local ligada ao host local em http://localhost:63636/metrics (a porta pode ser alterada através da bandeira -metrics-port )
O programa de amostra a seguir verifica a porta 80 do scanme.sh . Os resultados são retornados através do retorno de chamada 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 é feito? pela equipe do ProjectDiscovery. As contribuições da comunidade fizeram do projeto o que é.
Consulte o arquivo agradecimento.md para obter mais detalhes.