
Функции • Установка • Использование • Запуск NAABU • Конфигурация • Интеграция NMAP • Исключение CDN/WAF • Discord
Naabu - это инструмент сканирования портов, написанный в Go, который позволяет вам быстро и надежно перечислять допустимые порты для хостов. Это действительно простой инструмент, который выполняет быстрые сканирования SYN/Connect/UDP на хосте/списке хостов и перечисляет все порты, которые возвращают ответ.

naabu -hЭто будет отображать помощь для инструмента. Вот все переключатели, которые он поддерживает.
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)Загрузите готовые к запуску бинарного / докера или установить с помощью Go
ПРИМЕЧАНИЕ . Перед установкой NAABU обязательно установите библиотеку
libpcapдля захвата пакетов.
Для установки Libcap на Linux : sudo apt install -y libpcap-dev , на Mac : brew install libpcap
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latestЧтобы запустить инструмент на цели, просто используйте следующую команду.
naabu -host hackerone.com Это запустит инструмент против Hackerone.com. Существует ряд параметров конфигурации, которые вы можете пройти вместе с этой командой. Переключатель словеса -v может использоваться для отображения словесной информации.
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 Порты для сканирования на хосте могут быть указаны через параметр -p (порты UDP должны быть выражены как u:port ). Он принимает порты формата NMAP и запускает перечисление на них.
naabu -p 80,443,21-23,u:53 -host hackerone.com По умолчанию NAABU проверяет на Top 100 портов NMAP. Он поддерживает следующие встроенные списки портов -
| Флаг | Описание |
|---|---|
-top-ports 100 | Сканирование на 100 топ -100 порта |
-top-ports 1000 | Сканирование на порт NMAP Top 1000 |
-p - | Сканирование для полных портов с 1-65535 |
Вы также можете указать конкретные порты, которые вы хотели бы исключить из сканирования.
naabu -p - -exclude-ports 80,443 Чтобы запустить Naabu в списке хостов, можно использовать опцию -list .
naabu -list hosts.txtЧтобы запустить Naabu на ASN, можно использовать вход. Он берет IP -адрес, доступный для данного ASN и запускает перечисление на них.
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 Вы также можете получить выход в формате JSON, используя переключатель -json . Этот переключатель сохраняет выход в формате линий JSON.
naabu -host 104.16.99.52 -json
{"ip":"104.16.99.52","port":443}
{"ip":"104.16.99.52","port":80}Обнаруженные порты также могут быть привлечены к другим инструментам. Например, вы можете подготовить порты, обнаруженные Naabu в HTTPX, который затем найдет запуск HTTP -серверов на хосте.
echo hackerone.com | naabu -silent | httpx -silent
http://hackerone.com:8443
http://hackerone.com:443
http://hackerone.com:8080
http://hackerone.com:80 Скорость может контролироваться путем изменения значения флага rate , который представляет количество пакетов в секунду. Увеличение его при обработке хозяев может привести к увеличению ложноположительных ставок. Таким образом, рекомендуется сохранить его до разумной суммы.
Naabu поддерживает как IPv4, так и IPv6. Оба диапазона могут быть объединены в качестве входных данных. Если используется IPv6, подключение должно быть правильно настроено, а сетевой интерфейс должен иметь адрес IPv6 ( inet6 ) и шлюз по умолчанию.
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 Опция -ip-version 6 заставляет инструмент использовать адреса IPv6 при разрешении доменных имен.
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 Чтобы сканировать все IPS обеих версий, ip-version 4,6 может использоваться вместе с флагом -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 необязательно поддерживает несколько вариантов для выполнения обнаружения хоста. Обнаружение хоста является необязательным и может быть включено с флагом -wn . -sn Флаг инструментирует инструмент для выполнения только обнаружения хоста.
Доступные параметры для выполнения обнаружения хоста:
-arp )-ps 80 )-pa 443 )-pe )-pp )-pm )-nd ) NAABU поддерживает файл конфигурации как по умолчанию, расположенный по адресу $HOME/.config/naabu/config.yaml , он позволяет определить любой флаг в файле конфигурации и устанавливать значения по умолчанию, чтобы включить для всех сканирования.
Мы интегрировали поддержку NMAP для обнаружения услуг или любого дополнительного сканирования, поддерживаемого NMAP на найденных результатах Naabu, убедитесь, что у вас установлен nmap для использования этой функции.
Для использования можно использовать флаг nmap-cli , а затем команда NMAP, например:-
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 Наабу также поддерживает исключение CDN/WAF IPS, сканируемого порта. При использовании только 80 и 443 портов отсканируются для этих IPS. Эта функция может быть включена с помощью флага exclude-cdn .
В настоящее время cloudflare , akamai , incapsula и sucuri IPS поддерживаются для исключений.
Наабу раскрывает информацию о сканировании JSON на локальном порту, связанном с Localhost по адресу http://localhost:63636/metrics (порт можно изменить через флаг -metrics-port )
Следующий образец программы сканирует порт 80 scanme.sh . Результаты возвращаются через обратный вызов 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 ()
}Наабу сделан? командой ProjectDiscovery. Вклад сообщества сделал проект тем, кем он является.
Смотрите файл спасибо.md для получения более подробной информации.