🕵️ NetworkSherlock: Сканирование портов с помощью Shodan |

🕵️ NetworkSherlock: Сканирование портов с помощью Shodan

Обзоры

NetworkSherlock – это мощный и гибкий инструмент для сканирования портов, предназначенный для специалистов по сетевой безопасности и пентестеров.

Благодаря своим расширенным возможностям NetworkSherlock может эффективно сканировать диапазоны IP-адресов, блоки CIDR и множество целей.

Он выделяется своими возможностями детального захвата баннеров по различным протоколам и интеграцией с Shodan, ведущим мировым сервисом для сканирования и анализа подключенных к Интернету устройств.

Интеграция с Shodan позволяет NetworkSherlock предоставлять расширенные возможности сканирования, давая пользователям более глубокое понимание уязвимостей сети и потенциальных угроз.

Сочетая сканирование локальных портов с обширной базой данных Shodan, NetworkSherlock предлагает комплексный инструмент для выявления и анализа проблем сетевой безопасности.

Особенности

  • Сканирование нескольких IP-адресов, диапазонов IP-адресов и блоков CIDR.
  • Поддерживает сканирование портов по протоколам TCP и UDP.
  • Функция захвата подробных баннеров.
  • Проверка Ping для определения доступных целей.
  • Поддержка многопоточности для быстрого выполнения операций сканирования.
  • Возможность сохранения результатов сканирования в файл.
  • Предоставляет подробную информацию о версии.
  • Цветной вывод консоли для лучшей читаемости.
  • Интеграция с Shodan для расширения возможностей сканирования.
  • Поддержка файла конфигурации для ключа API Shodan.

Установка

Для работы NetworkSherlock требуется Python 3.6 или более поздняя версия.

Клонируйте репозиторий

git clone https://github.com/HalilDeniz/NetworkSherlock.git

Установите необходимые пакеты

pip install -r requirements.txt

Конфигурация

Обновите файл networksherlock.cfg, указав в нем свой ключ API Shodan:

[SHODAN]
api_key = YOUR_SHODAN_API_KEY

Использование

python3 networksherlock.py --help
usage: networksherlock.py [-h] [-p PORTS] [-t THREADS] [-P {tcp,udp}] [-V] [-s SAVE_RESULTS] [-c] target

NetworkSherlock: Port Scan Tool

positional arguments:
  target                Target IP address(es), range, or CIDR (e.g., 192.168.1.1, 192.168.1.1-192.168.1.5,
                        192.168.1.0/24)

options:
  -h, --help            show this help message and exit
  -p PORTS, --ports PORTS
                        Ports to scan (e.g. 1-1024, 21,22,80, or 80)
  -t THREADS, --threads THREADS
                        Number of threads to use
  -P {tcp,udp}, --protocol {tcp,udp}
                        Protocol to use for scanning
  -V, --version-info    Used to get version information
  -s SAVE_RESULTS, --save-results SAVE_RESULTS
                        File to save scan results
  -c, --ping-check      Perform ping check before scanning
  -ad, --arp-discover: Perform ARP discovery on the specified network.
  --use-shodan          Enable Shodan integration for additional information

Основные параметры

  • target: Целевой IP-адрес (адреса), диапазон IP-адресов или блок CIDR сканирования.
  • -p, –ports: Порты сканирования (например, 1-1000, 22,80,443).
  • -t, –threads: Количество используемых потоков.
  • -P, –protocol: Протокол, используемый для сканирования (tcp или udp).
  • -V, –version-info: Получать информацию о версии во время захвата баннера.
  • -s, –save-results: Сохранить результаты в указанный файл.
  • -c, –ping-check: Выполнить проверку ping перед сканированием.
  • –use-shodan: Включить интеграцию с Shodan.

Пример использования

Простое сканирование портов

Сканирование одного IP-адреса на портах по умолчанию:

python networksherlock.py 192.168.1.1

Кастомный диапазон портов

Сканирование IP-адреса с заданным диапазоном портов:

python networksherlock.py 192.168.1.1 -p 1-1024

Определение нескольких IP-адресов и портов

Сканируйте несколько IP-адресов на определенных портах:

python networksherlock.py 192.168.1.1,192.168.1.2 -p 22,80,443

Сканирование блока CIDR

Сканирование всей подсети с использованием нотации CIDR:

python networksherlock.py 192.168.1.0/24 -p 80

Использование многопоточности

Для ускорения выполнения сканирования используйте несколько потоков:

python networksherlock.py 192.168.1.1-192.168.1.5 -p 1-1024 -t 20

Сканирование с выбором протокола

Сканирование по определенному протоколу (TCP или UDP):

python networksherlock.py 192.168.1.1 -p 53 -P udp

Сканирование с помощью Shodan

python networksherlock.py 192.168.1.1 --use-shodan

Захват баннера и сохранение результатов

Выполните детальное сканирование с захватом баннеров и сохраните результаты в файл:

python networksherlock.py 192.168.1.1 -p 1-1000 -V -s results.txt

Проверка пинга перед сканированием

Сканирование диапазона IP-адресов после выполнения проверки ping:

python networksherlock.py 10.0.0.1-10.0.0.255 -c

Пример вывода

python3 networksherlock.py 10.0.2.0/24 -t 10 -V -p 21-1000
********************************************
Scanning target: 10.0.2.1
Scanning IP    : 10.0.2.1
Ports          : 21-1000
Threads        : 10
Protocol       : tcp
---------------------------------------------
Port        Status   Service           VERSION
53  /tcp     open     domain
********************************************
Scanning target: 10.0.2.2
Scanning IP    : 10.0.2.2
Ports          : 21-1000
Threads        : 10
Protocol       : tcp
---------------------------------------------
Port        Status   Service           VERSION
445 /tcp     open     microsoft-ds
135 /tcp     open     epmap
********************************************
Scanning target: 10.0.2.12
Scanning IP    : 10.0.2.12
Ports          : 21-1000
Threads        : 10
Protocol       : tcp
---------------------------------------------
Port        Status   Service           VERSION
21  /tcp     open     ftp           220 (vsFTPd 2.3.4)
22  /tcp     open     ssh           SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1
23  /tcp     open     telnet          #'
80  /tcp     open     http           HTTP/1.1 200 OK
53  /tcp     open     kpasswd        464/udpcp
445 /tcp     open     domain         %SMBr
3306/tcp     open     mysql          >
********************************************
Scanning target: 10.0.2.20
Scanning IP    : 10.0.2.20
Ports          : 21-1000
Threads        : 10
Protocol       : tcp
---------------------------------------------
Port        Status   Service           VERSION
22  /tcp     open     ssh            SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.9

см. также:

¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий