Программы для сканирования портов linux

Обновлено: 07.07.2024

Nmap - лучший инструмент для обнаружения хостов и сканирования портов на сегодняшний день. Nmap позволит нам получить большой объем информации о компьютерах в нашей сети, он сможет сканировать, какие хосты включены, и даже проверять, есть ли у них открытые порты, фильтруют ли они порты (у них есть брандмауэр активирован), и даже знать, какая операционная система использует определенную цель. Вы хотите знать все о Nmap и о том, как им пользоваться? В этой статье мы объясним все, что вам нужно знать об этом инструменте.

основные черты

Nmap это полностью бесплатная утилита с открытым исходным кодом, она позволяет нам обнаруживать сети и хосты, а также проводить аудит безопасности. Эта программа совместима с Linux, Windows и операционные системы macOS, но во всех они используются через командную строку, хотя у нас есть возможность установки ZenMap, это графическая утилита Nmap для сканирования портов через графический интерфейс пользователя. Если вы не хотите сражаться с командами через консоль, этот графический пользовательский интерфейс может быть полезен на первых этапах работы с этой замечательной программой, однако, когда у вас будет больше опыта, вы обязательно будете выполнять все команды прямо из терминала.

Nmap позволяет нам обнаруживать хосты в локальной сети, а также через Интернет, таким образом мы можем узнать, есть ли эти хосты (компьютеры, серверы, маршрутизаторы, коммутаторы, IoT устройства) в данный момент подключены к Интернету или локальной сети. Этот инструмент также позволяет нам выполнять сканирование портов на разных хостах, видеть, какие службы у нас активны на указанных хостах, благодаря тому, что он сообщает нам статус их портов, мы можем знать, какую операционную систему использует определенный компьютер. , и мы даже можем автоматизировать различные тесты на проникновение, чтобы проверить безопасность оборудования.


Nmap имеет разные типы сканирования портов, они могут быть через сегменты TCP, дейтаграммы UDP или пакеты ICMP, кроме того, он позволяет выполнять сканирование скрытым образом, чтобы их было трудно обнаружить брандмауэрами. Конечно, мы сможем выполнять сканирование портов на определенных конкретных портах, между диапазонами портов, диапазонами IP-адресов, возможность использования пакетов TCP null, FIN, Xmas и ACK в дополнение к SYN для обнаружения открытых портов TCP.

Другие функции, которые предлагает нам этот инструмент, - это возможность провести полную инвентаризацию сети и даже проверить, работает ли определенный хост или служба. Эта программа была разработана для сканирования большого количества хостов, поэтому, если вам нужно сканировать несколько целей, у вас не возникнет проблем. Эта программа очень гибкая, она включает в себя десятки передовых методов сканирования хостов и портов, кроме того, она также позволяет проводить аудит через NSE (Nmap Search Engine), поэтому она действительно эффективна.

Nmap имеет различные состояния портов, которые появятся при сканировании портов. Важно знать, что означает каждое состояние Nmap, потому что при любом сканировании портов он будет возвращать разные состояния.

Статус порта с Nmap

  • Откройте - Приложение активно принимает соединения TCP или UDP. Порт открыт и может использоваться, пентестеры смогут использовать этот открытый порт для эксплуатации системы. Это состояние по умолчанию, если у нас нет брандмауэра, блокирующего доступ.
  • Закрыто : Закрытый порт доступен, потому что он отвечает на Nmap, однако на этом порту нет запущенных приложений. Это полезно для обнаружения того, что хост включен, или как часть обнаружения операционной системы. Системному администратору рекомендуется отфильтровать эти порты с помощью брандмауэра, чтобы они были недоступны. Что касается пентестера, то желательно оставить эти порты «закрытыми» для анализа в дальнейшем, на случай, если они поставят новую услугу.
  • Отфильтрованный : В этом состоянии Nmap не может определить, открыт ли порт, потому что на этом порту есть брандмауэр, фильтрующий пакеты Nmap. Эти отфильтрованные порты появятся, когда у нас будет активирован брандмауэр. Nmap будет неоднократно пытаться подключиться, что значительно замедляет сканирование портов.
  • Открыть |Отфильтрованный : Nmap не знает, открыт порт или отфильтрован. Это происходит потому, что открытый порт не отправляет никакого ответа, и это отсутствие ответа может быть от брандмауэра. Этот статус появляется, когда мы используем UDP и IP, и мы используем сканирование FIN, NULL и Xmas.
  • Закрыто|Отфильтрованный : в этом состоянии неизвестно, закрыт порт или фильтруется. Это состояние используется только при сканировании простоя IP.

После того, как мы увидели основные функции Nmap и состояние доступных портов, мы собираемся установить и использовать его.

Скачайте и установите Nmap на любую систему

Первое, что нам нужно сделать, чтобы использовать эту мощную программу, - это загрузить и установить. в Раздел загрузки Nmap вы можете найти все ссылки, двоичные файлы и исходный код для установки в операционных системах Windows, Linux и MacOS. В настоящее время эта программа доступна во всех репозиториях операционных систем на базе Linux, поэтому ее установка действительно проста. Мы установили эту программу в Ubuntu, но просто выполнив команду установки вашей операционной системы с последующим «nmap», вы без проблем установите программу.

sudo apt install nmap

После установки мы можем использовать его с терминала в Windows, Linux или macOS. Во всех примерах, которые мы приведем ниже, мы использовали операционную систему Ubuntu, но у нас есть те же команды, которые доступны для Windows и macOS, без каких-либо изменений.

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

Быстрое сканирование портов

Если вы хотите выполнить быстрое сканирование порта на конкретный хост, мы должны ввести следующую команду.

Например, если мы хотим выполнить быстрое сканирование основных портов на хост с IP-адресом 192.168.1.2, порядок будет следующим:

Программа вернет порты, открытые на целевом компьютере.


Сканирование ряда портов

Вместо сканирования всех портов мы можем установить диапазон портов для проверки. Для этого выполним:

nmap -p [rango] [ip]

Если мы хотим выполнить сканирование портов с TCP 20 на TCP 200 по IP-адресу 192.168.1.2, просто выполните следующую команду:

nmap -p 20-200 192.168.1.2

Программа укажет в этом диапазоне, какие порты открыты.


Обнаружение операционной системы и других данных хоста

Мы можем указать Nmap обнаружить операционную систему. Он делает это, отправляя пакеты и анализируя способ их возврата, который полностью отличается в каждой системе. Наряду с этим он будет выполнять сканирование портов и сервисов на наличие уязвимостей. Также сканирование вернет полезную информацию. Для этого мы должны выполнить:

Если мы хотим выполнить это сканирование до IP-адреса 192.168.1.2, мы можем выполнить следующую команду:

nmap -A -v 192.168.1.2


Список всех команд s

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

Выберите цели

Откройте для себя системы

  • -PS n tcp синхронизация
  • -PA n ping TCP ACK
  • -PU n ping UDP
  • -PM Netmask Req.
  • -PP Требуется отметка времени
  • -PE Echo Req
  • -sL анализ списка
  • -PO ping по протоколу
  • -PN Не пинговать
  • -n не делать DNS
  • -R Разрешить DNS во всех целевых системах
  • –Traceroute: трассировка маршрута до системы (для сетевых топологий)
  • -sP ping, то же самое, что –PP –PM –PS443 –PA80

Методы анализа портов

  • -sS анализировать с использованием TCP SYN
  • -sT разбор с использованием TCP CONNECT
  • -sU анализ с использованием UDP
  • -s И анализ с использованием SCTP INIT
  • -sZ с использованием COOKIE ECHO из SCTP
  • -sO IP протокол
  • -sW Окно TCP -sN
  • –SF -sX NULL, FIN, XMAS
  • –SA TCP ACK

Порты для анализа и порядок анализа

  • -p н-мранго
  • -p– все порты
  • -pn, m, z указаны
  • -p U: nm, z T: n, m U для UDP, T для TCP
  • -F быстрый, общий 100
  • –Top-ports n анализирует наиболее часто используемые порты
  • -r не случайно

Продолжительность и исполнение:

  • -T0 параноик
  • -T1 стелс
  • -T2 сложный
  • -T3 нормальный
  • -T4 агрессивный
  • -T5 безумие
  • –Min-hostgroup
  • –Max-hostgroup
  • –Минутная ставка
  • –Макс-ставка
  • –Минепараллельность
  • –Макс-параллелизм
  • –Min-rtt-timeout
  • –Max-rtt-timeout
  • –Initial-rtt-timeout
  • –Max-retries
  • –Host-timeout –scan-delay

Определение службы и версии

  • -sV: определение версии сервисов
  • –Все порты не исключают порты.
  • –Version-all test каждое сканирование
  • –Version-trace, отслеживание версии, анализ активности
  • -Или активировать обнаружение операционной системы
  • –Нечеткое определение ОС
  • –Max-os-пытается установить максимальное количество попыток против целевой системы

Брандмауэр / IDS Evasion

  • -f фрагмент пакетов
  • -D d1, d2 анализ маскировки с ловушками
  • -S IP-адрес источника подделки
  • –G источник подмены исходного порта
  • –Порядок рандомизации хостов
  • –Spoof-mac Mac изменить исходный MAC-адрес

Уровень детализации и параметры отладки

  • -v Увеличить уровень детализации
  • –Причины причины по системе и порту
  • -d (1-9) установить уровень отладки
  • –Packet-trace путь пакета

Другие варианты

  • –Продолжить анализ файла возобновить прервано (формат вывода с -oN или -oG)
  • -6 включить сканирование IPV6
  • -A агрессивный, то же что -O -sV -sC –traceroute

Интерактивные возможности

  • v / V увеличить / уменьшить уровень детализации анализа
  • d / D увеличить / уменьшить уровень отладки
  • p / P включить / выключить трассировку пакетов

Сценарии

  • -sC выполнять анализ со скриптами по умолчанию
  • –Сценарий запуска файла сценария (или все)
  • –Script-args n = v предоставляет аргументы
  • –Сценарий-трассировка показывает входящую и исходящую связь

Форматы вывода

  • -oN сохранить в нормальном формате
  • -oX сохранить в формате XML
  • -oG сохранить в формате для дальнейшего использования Grep
  • -o Сохранить во всех предыдущих форматах

В основном это команды, доступные для Nmap. Прежде чем закончить, мы должны сказать, что Nmap имеет множество опций для выполнения полного анализа сети. Мы можем просмотреть все доступные варианты, набрав:


Nmap, несомненно, очень простой и полный инструмент для выполнения сетевых аудитов, но на этом не заканчивается, у нас также есть Nmap NSE для выполнения расширенного пентестинга.

Nmap NSE: что это такое и для чего

Поисковая система Nmap или также известная как Nmap NSE - это большая база данных с тысячами скриптов, которые позволят нам автоматизировать пентестинг в системах и сетях. Этот набор скриптов позволит нам автоматизировать многие действия, такие как проведение атак методом грубой силы на серверы Samba, FTP-серверы, SSH-серверы, проверка наличия известной уязвимости на веб-сервере и многое другое.

Например, если мы хотим провести атаку методом грубой силы на основе списка пользователей (с файлом с именем users.txt) и списка паролей для тестирования (с файлом с именем keys.txt) на SSH-сервер определенный компьютер с IP 99.99.99.99, мы можем ввести следующую команду:

nmap -p 22 --script ssh-brute --script-args userdb=usarios.txt,passdb=claves.txt --script-args ssh-brute.timeout=4s 99.99.99.99

Мы рекомендуем вам посетить официальный сайт NSE где вы найдете все скрипты, которые в настоящее время есть в этой большой базе данных, кроме того, у вас будут примеры того, как их использовать.

Nmap - это очень популярный сканер сети с открытым исходным кодом, который может использоваться как в Windows, так и в Linux. Программа Nmap или Network Mapper была разработана Гордоном Луоном и на данный момент используется специалистами по безопасности и системными администраторами по всему миру.

Эта программа помогает системным администраторам очень быстро понять какие компьютеры подключены к сети, узнать их имена, а также посмотреть какое программное обеспечение на них установлено, какая операционная система и какие типы фильтров применяются. Функциональность программы может быть расширена за счет собственного скриптового языка, который позволяет администраторам автоматизировать много действий.

Например, с помощью скриптов можно автоматически обнаруживать новые уязвимости безопасности в вашей сети. Namp может использоваться с хорошими и плохими намерениями, будьте аккуратны, чтобы не использовать nmap против закона. В этой инструкции мы рассмотрим как пользоваться namp для сканирования портов в операционной системе Linux. Но сначала нужно попытаться понять как работает эта утилита.

Как работает Nmap?

В компьютерных сетях все подключенные устройства имеют свой ip адрес. Каждый компьютер поддерживает протокол ping, с помощью которого можно определить подключен ли он к сети. Мы просто отправляем ping запрос компьютеру, и если он отзывается, то считаем, что он подключен. Nmap использует немного иной подход. Компьютеры также определенным образом реагируют на те или иные сетевые пакеты, утилита просто отправляет нужные пакеты и смотрит какие хосты прислали ответ.

Утилита nmap в процессе сканирования сети перебирает доступный диапазон портов и пытается подключиться к каждому из них. Если подключение удалось, в большинстве случаев, передав несколько пакетов программа может даже узнать версию программного обеспечения, которые ожидает подключений к этому порту. Теперь, после того, как мы рассмотрели основы, рассмотрим как пользоваться nmap для сканирования портов и сети.

Синтаксис Nmap

Команда запуска Nmap очень проста для этого достаточно передать ей в параметрах целевой IP адрес или сеть, а также указать опции при необходимости:

$ nmap опции адрес

Теперь давайте рассмотрим основные опции, которые понадобятся нам в этой статье.

  • -sL - просто создать список работающих хостов, но не сканировать порты nmap;
  • -sP - только проверять доступен ли хост с помощью ping;
  • -PN - считать все хосты доступными, даже если они не отвечают на ping;
  • -sS/sT/sA/sW/sM - TCP сканирование;
  • -sU - UDP сканирование nmap;
  • -sN/sF/sX - TCP NULL и FIN сканирование;
  • -sC - запускать скрипт по умолчанию;
  • -sI - ленивое Indle сканирование;
  • -p - указать диапазон портов для проверки;
  • -sV - детальное исследование портов для определения версий служб;
  • -O - определять операционную систему;
  • -T2 - скорость сканирования, чем больше, тем быстрее;
  • -D - маскировать сканирование с помощью фиктивных IP;
  • -S - изменить свой IP адрес на указанный;
  • -e - использовать определенный интерфейс;
  • --spoof-mac - установить свой MAC адрес;
  • -A - определение операционной системы с помощью скриптов.

Теперь, когда мы рассмотрели все основные опции, давайте поговорим о том, как выполняется сканирование портов nmap.

Как пользоваться Nmap для сканирования портов в Linux

Дальше рассмотрим примеры nmap. Сначала давайте рассмотрим как найти все подключенные к сети устройства, для этого достаточно использовать опцию -sL и указать маску нашей сети. в моем случае это 192.168.1.1/24. Маску вашей локальной сети вы можете найти, выполнив команду:

nmap

Из вывода для используемого интерфейса возьмите число после слеша, а до слэша укажите ip вашего роутера. Команда на сканирование сети nmap будет выглядеть вот так:

nmap -sL 192.168.1.1/24

nmap1

Иногда это сканирование может не дать никаких результатов, потому что некоторые операционные системы имеют защиту от сканирования портов. Но это можно обойти, просто использовав для сканирования ping всех ip адресов сети, для этого есть опция -sn:

nmap -sn 192.168.1.1/24

nmap2

Как видите, теперь программа обнаружила активные устройства в сети. Дальше мы можем сканировать порты nmap для нужного узла запустив утилиту без опций:

sudo nmap 192.168.1.1

nmap4

Теперь мы можем видеть, что у нас открыто несколько портов, все они используются каким-либо сервисом на целевой машине. Каждый из них может быть потенциально уязвимым, поэтому иметь много открытых портов на машине небезопасно. Но это еще далеко не все, что вы можете сделать, дальше вы узнаете как пользоваться nmap.

Чтобы узнать более подробную информацию о машине и запущенных на ней сервисах вы можете использовать опцию -sV. Утилита подключится к каждому порту и определит всю доступную информацию:

sudo nmap -sV 192.168.1.1

nmap5

На нашей машине запущен ftp, а поэтому мы можем попытаться рассмотреть эту службу подробнее с помощью стандартных скриптов nmap. Скрипты позволяют проверить порт более детально, найти возможные уязвимости. Для этого используйте опцию -sC и -p чтобы задать порт:

sudo nmap -sC 192.168.56.102 -p 21

Мы выполняли скрипт по умолчанию, но есть еще и другие скрипты, например, найти все скрипты для ftp вы можете командой:

sudo find /usr/share/nmap/scripts/ -name '*.nse' | grep ftp

Затем попытаемся использовать один из них, для этого достаточно указать его с помощью опции --script. Но сначала вы можете посмотреть информацию о скрипте:

sudo nmap --script-help ftp-brute.nse

nmap6

Этот скрипт будет пытаться определить логин и пароль от FTP на удаленном узле. Затем выполните скрипт:

sudo nmap --script ftp-brute.nse 192.168.1.1 -p 21

nmap7

В результате скрипт подобрал логин и пароль, admin/admin. Вот поэтому не нужно использовать параметры входа по умолчанию.

Также можно запустить утилиту с опцией -A, она активирует более агрессивный режим работы утилиты, с помощью которого вы получите большую часть информации одной командой:

sudo nmap -A 192.168.1.1

nmap8

Обратите внимание, что здесь есть почти вся информация, которую мы уже видели раньше. Ее можно использовать чтобы увеличить защиту этой машины.

Выводы

В этой статье мы рассмотрели как выполняется сканирование портов nmap, а также несколько простых примеров использования этой утилиты. Эти команды nmap могут быть полезными многим системным администраторам, чтобы улучшить безопасность их систем. Но это далеко не все возможности утилиты. Продолжайте экспериментировать с утилитой чтобы узнать больше только не в чужих сетях!

nmap — это аббревиатура от «Network Mapper», на русский язык наиболее корректно можно перевести как «сетевой картограф». Возможно, это не лучший вариант перевода на русский язык, но он довольно точно отображает суть — инструмент для исследования сети и проверки безопасности. Утилита кроссплатформенна, бесплатна, поддерживаются операционных системы Linux, Windows, FreeBSD, OpenBSD, Solaris, Mac OS X.

Рассмотрим использование утилиты в Debian. В стандартной поставке дистрибутива nmap отсутствует, установим его командой

Nmap умеет сканировать различными методами — например, UDP, TCP connect(), TCP SYN (полуоткрытое), FTP proxy (прорыв через ftp), Reverse-ident, ICMP (ping), FIN, ACK, SYN и NULL-сканирование. Выбор варианта сканирования зависит от указанных ключей, вызов nmap выглядит следующим образом:

nmap <ключи> цель

Хинт: Если во время сканирования нажать пробел — можно увидеть текущий прогресс сканирования и на сколько процентов он выполнен. Через несколько секунд получаем ответ, в котором пока что интересна строчка Device type:

Device type: general purpose|WAP|webcam|storage-misc
Running (JUST GUESSING) : Linux 2.6.X|2.4.X (93%), AXIS Linux 2.6.X (89%), Linksys Linux 2.4.X (89%)
Aggressive OS guesses: Linux 2.6.17 - 2.6.28 (93%), Linux 2.6.9 - 2.6.27 (93%), Linux 2.6.24 (Fedora 8) (92%), Linux 2.6.18 (Slackware 11.0) (92%), Linux 2.6.19 - 2.6.26 (92%), OpenWrt (Linux 2.4.32) (91%), Linux 2.6.22 (91%), Linux 2.6.22 (Fedora Core 6) (90%), Linux 2.6.13 - 2.6.27 (90%), Linux 2.6.9 - 2.6.18 (90%)
No exact OS matches for host (test conditions non-ideal).

Вообще, точную версию ядра средствами nmap определить невозможно, но примерную дату «свежести» и саму операционную систему определить можно. Можно просканировать сразу несколько хостов, для этого надо их перечислить через пробел:

Вернемся к нашему подопытному хосту. Хочется узнать поподробнее, какой используется софт. Попробуем уточнить полученные данные с помощью ключей -sV:

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

Агрессивное сканирование можно провести, указав ключ -A

Nmap выведет очень много информации, я не стану приводить пример. Сканирование может длится довольно долго, занимая несколько минут.

В локальных сетях или просто имея на руках диапазон ip адресов, удобно проверить их на занятость с помощью ключей -sP:

Сканирование проходит довольно быстро, так как по сути это обычный ping-тест, отвечает ли хост на ping. Следует учесть, что хост может не отвечать на ping из-за настроек фаерволла. Если нужный участок сети нельзя ограничить маской, можно указать диапазон адресов, с какого и по какой надо провести сканирование. Например, есть диапазон адресов с 192.168.1.2 до 192.168.1.5. Тогда выполним:

Ответ будет выглядеть так:

Host 192.168.1.2 is up (0.0023s latency)
Host 192.168.1.3 is up (0.0015s latency)
Host 192.168.1.4 is up (0.0018s latency)
Host 192.168.1.5 is up (0.0026s latency)

В моем случае все ip в данный момент были в сети.
Это далеко не все возможности nmap, но уместить их в рамках одной статьи несколько сложновато.

Если вам ближе GUI — есть замечательная утилита Zenmap — графическая оболочка для nmap, умеющая заодно и строить предполагаемую карту сети.

Хочу предупредить, что сканирование портов на удаленных машинах может нарушать закон.
UDPInflame уточнил, что сканирование портов все-таки не является противозаконным.


В любом случае, я не читаю здесь лекцию «Основы сетевых технологий». Я предполагаю, что вы знакомы с основами сканирования портов, поскольку ищете сканеры портов для своей системы Linux.

Инструменты сканера портов используются в основном администраторами сети или сервера. Но есть и случаи личного использования. Иногда геймеры и этики используют этот метод, чтобы найти лазейки в сети в исследовательских целях. Независимо от того, почему вы его используете, хороший сканер портов может значительно облегчить вашу работу. К счастью, в Linux есть множество пакетов сканеров портов для установки, и мы собираемся поговорить о них.

Лучшие сканеры портов Linux для сетевых администраторов

Дистрибутивы Linux в основном используются в серверных приложениях. Вот почему в Linux вы найдете больше и более качественных сетевых инструментов, чем в любой другой операционной системе. Как я уже сказал ранее, существует приличное количество сканеров портов Linux. Но большинство из них слишком сложные и для опытных пользователей. Вот почему вы не найдете достаточно ресурсов о них в Интернете. Итак, я решил составить список лучших сканеров портов, доступных для платформы Linux.

1. Nmap


Ключевая особенность

  • Даже командные строки разработаны для новичков, а синтаксис очень прост.
  • Вы можете получить множество параметров, связанных с хостом, таких как информация об ОС, тип системы и т. Д.
  • Их веб-сайт предоставляет подробное руководство по сканированию портов с помощью этого инструмента.
  • Он имеет встроенную библиотеку, указанную как наиболее популярные TCP-порты, которые вы можете использовать для быстрого сканирования.
  • Вы получите результат в удобочитаемом формате, а также можете экспортировать отчет, если хотите.

Плюсы: существует большая база пользователей этого инструмента, и если вы столкнетесь с какой-либо проблемой, вы найдете множество ресурсов в Интернете для ее решения.

Минусы: некоторые дополнительные функции заставят новичков потеряться в толпе функций.

2. Unicornscan

Unicornscan также является очень популярным сканером портов Linux. Он не предлагает такой гибкости, как Nmap. Но это действительно достойный конкурент Nmap, и его намного проще использовать для обычных пользователей. Этот инструмент также обладает некоторыми эксклюзивными функциями и преимуществами, которые недоступны даже для платных инструментов. Он поддерживает протоколы TCP и UDP для сканирования портов. Вы можете использовать любой из них и некоторые другие специальные протоколы в зависимости от сценариев использования.


Ключевая особенность

  • Он может обнаруживать активную операционную систему и запущенные в данный момент приложения.
  • Вы можете сохранить результаты сканирования в базе данных в удобочитаемом формате.
  • Пакет прост в установке, и он поставляется с предустановленными дистрибутивами, наиболее ориентированными на безопасность.
  • Вы можете расположить цели в последовательности, чтобы выполнить многократное сканирование.
  • Захваченные пакеты также можно сохранить в формате файла PCAP для дальнейшего анализа.

Минусы: на официальном сайте не так много ресурсов о том, как работать с этим инструментом.

3. Zenmap

В Zenmap нет ничего нового в плане сканирования портов. Фактически, вы получите все возможности Nmap, потому что он использует преимущества открытого исходного кода Nmap и построен на его основе. Что вы получаете дополнительно, так это графический интерфейс пользователя. Это палочка-выручалочка для тех, кто не очень хорошо знаком с инструментами командной строки. Если вы новичок в сетевых технологиях, вам это понравится из-за простого в использовании интерфейса.


Ключевая особенность

  • Пользовательский интерфейс немного устаревший, но чистый и аккуратно оформленный.
  • Вы можете получить доступ к мастеру команд прямо из главного меню.
  • Есть возможность открыть предыдущие результаты сканирования и сохранить результаты сканирования.
  • Вы можете создавать шаблоны сканирования на основе наиболее часто используемых команд и настроек.
  • В большинстве случаев он идет в комплекте с Nmap, и это здорово.

Плюсы: Zenmap упростил сканирование портов для неопытных людей. Вдобавок ко всему, некоторые изящные функции, такие как предустановки, делают его отличным компаньоном.

Минусы: разработчики должны обновить пользовательский интерфейс, используя современный язык дизайна.

4. Angry IP Scanner

Это еще один сканер портов Linux. Не путайте и его агрессивное именование. Этот инструмент работает как оберег, и я гарантирую, что он никогда вас не рассердит. Самым интересным фактом об этом инструменте является то, что он работает быстрее, чем что-либо на рынке прямо сейчас. Этот кроссплатформенный IP-сканер имеет довольно простые функции, но также имеет большое преимущество. Он очень удобен и прост в использовании, что делает его самым удобным инструментом в легкой упаковке.


Ключевая особенность

  • Его можно использовать без установки, как переносной инструмент.
  • Вы можете сохранять отсканированные результаты в файлах различных форматов, таких как CSV, TXT, XML.
  • Некоторые плагины могут расширять свою функциональность, что является большим преимуществом.
  • Вы получите информацию NetBIOS с целевого IP-адреса с расширенной метаинформацией.
  • Пользователи могут создавать собственные плагины, используя язык программирования Java.

Плюсы: инструмент очень гибкий, с возможностью расширения функций путем написания кодов и использования сторонних плагинов.

Минусы: он предлагает меньше возможностей с точки зрения ванильной установки, чем популярные конкуренты.

5. Netcat


Ключевая особенность

  • Этот инструмент поддерживает как исходящие, так и входящие соединения по протоколам UDP и TCP.
  • Сканер портов поддерживает рандомизатор, который упрощает поиск открытых портов.
  • Вы можете легко установить его из официальных репозиториев любого дистрибутива.
  • Netcat поддерживает буферизованный режим отправки, шестнадцатеричный дамп и некоторые другие расширенные функции.
  • Его можно использовать как инструмент сетевой отладки, а также с некоторыми дополнительными преимуществами.

Плюсы: будучи устаревшим инструментом, он очень надежен и стабилен. С ним совместимы практически все дистрибутивы.

Минусы: у него нет современного графического интерфейса с современными функциями, что определенно является недостатком.

6. Knocker


Ключевая особенность

  • Этот инструмент доступен для нескольких платформ, кроме Linux.
  • Доступны как терминальные версии, так и версии графического интерфейса на основе GTK.
  • Он поддерживает протокол TCP для сканирования IP, который является наиболее распространенным.
  • Knocker может предоставить отчет о службах, работающих на определенном порту.
  • Инструмент находится в активной разработке, и группа разработчиков очень отзывчива.

Плюсы: Knocker не оказывает особой нагрузки на систему, поскольку он очень легкий и имеет только основные функции.

Минусы: у него нет функции сканирования UDP, что немного досадно.

7. Vault


Ключевая особенность

  • Он может сканировать TCP-порты и получать различную информацию, кроме этого открытого порта.
  • Этот инструмент без проблем совместим со всеми операционными системами Unix.
  • Не требует никаких зависимостей, кроме комплекта разработчика Python.
  • В Vault включены некоторые функции безопасности, которые могут помочь вам в анализе бэкдора.
  • Вы можете получить его бесплатно и можете использовать форк для повышения удобства использования и расширенных функций.

Плюсы: он хорошо конкурирует с продвинутыми инструментами, такими как Nmap, с многочисленными функциями.

Минусы: он не будет работать в вашей системе без Python, что следует учитывать.

8. UMIT


Ключевая особенность

Плюсы: UMIT работает на том же алгоритме Nmap с некоторыми улучшениями на стороне пользовательского интерфейса. Вот почему на это можно слепо положиться.

Минусы: последняя версия появилась почти 6 лет назад, и разработчики не заинтересованы в дальнейшем развитии.

9. NmapSi4

Этот инструмент также построен на Nmap для проверки стабильности большинства функций. В отличие от оригинального Nmap, он имеет функциональный графический интерфейс на основе GTK, который упрощает работу. NmapSi4 очень популярен среди сетевых администраторов Linux. Кроме того, есть несколько неофициальных портов с некоторыми дополнительными функциями и функциями. Самое приятное то, что NmapSi4 имеет один из самых функциональных пользовательских интерфейсов с лучшим дизайном и удобством использования.


Ключевая особенность

  • Вы можете искать хосты и IP-адреса с помощью инструмента Network Discover.
  • Пользователи могут создать свой собственный профиль сканирования для более быстрого доступа.
  • Есть специальный браузер для обнаружения сетевых уязвимостей.
  • Пользовательский интерфейс разделен на вкладки, чтобы вы могли легко найти нужные функции.
  • Вы получаете полную поддержку Nmap NSE с Traceroute.

Плюсы: этот форк Nmap очень стабилен, и я не обнаружил ни одной проблемы при его использовании в моей системе Debian.

Минусы: для установки нужны обходные пути, и это может беспокоить новичков.

10. Sandmap


Ключевая особенность

  • Есть несколько предустановок с некоторыми предопределенными параметрами, которые вы можете использовать для быстрого сканирования.
  • Он поддерживает NSE для написания сценариев для реализации сложных задач.
  • Вы можете выполнять несколько сканирований, и для этого нет ограничений программного обеспечения.
  • В настоящее время для этого инструмента доступно более 30 модулей.
  • Вы можете прочитать документацию для быстрого обучения, даже если вы новичок.

Плюсы: у него стилизованный интерфейс командной строки, который доставит удовольствие таким любителям терминалов, как я.

Минусы: некоторым людям все еще может не хватать полноценного графического пользовательского интерфейса.

Наши рекомендация

Последние мысли

Системы Linux и UNIX являются сетевыми операционными системами (ОС). Поэтому их эксплуатация неразрывно связана с администрированием и обслуживанием сетей. Независимо от сложности и масштабов сети необходимо проводить постоянный мониторинг окружения сети на предмет качества связи и соединений. А также для определения признаков или даже фактов вредительства в ней или несанкционированных атак. Одним из эффективных инструментов для выполнения подобных задач является команда nmap.

Зачем нужна команда nmap?

Основная задача команды nmap – сканирование сетевых портов указанных компьютеров для определения, какие из них используются (прослушиваются) программами-серверами. Для подавляющего числа сетевых демонов (служб) определены их стандартные порты по-умолчаню, которые они используют для своей работы. По этому признаку можно делать выводы, о том какие серверные программы запущены на том или ином компьютере в сети.

Также команда nmap – это самый доступный инструмент в руках злоумышленников для организации подготовки хакерской атаки на сеть. Ведь с помощью этой команды очень легко получить информацию, на основе которой можно судить о слабых и уязвимых местах в атакуемой системе.

Синтаксис команды nmap и особенности её работы

Команда nmap довольно проста в использовании и каким-то сложным синтаксисом не отличается:

Чего нельзя сказать о количестве, функциональности её ключей и неисчерпаемых возможностях их применения. Официальная документация, доступная на страницах man-руководства (команда man nmap), кроме того, что очень подробная (трудно встретить ещё подробнее), так ещё и имеет качественный перевод (локализации, в том числе и на русском языке) в большинстве Linux-дистрибутивов.

Не всегда утилита nmap предустановлена в системе, поэтому для её использования требуется установка соответствующего пакета, который обычно имеет имя nmap:

Или в Centos/Redhat


Столбец STATE показывает состояние порта: он может быть открыт (open), когда связан с использующими его службами (соединениями), закрыт (closed), когда порт не используется ни одним сервером. Также доступны состояния: unfiltered, когда nmap не смогла определить состояние порта. А также filtered – когда порт защищён (или заблокирован) брандмауэром.

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

Если посмотреть на отчёт команды nmap для более защищённого узла, то он будет выглядеть примерно так:

Однако, одна из особенностей nmap заключается в том, что эту команду можно использовать в «хакерском» режиме. Другими словами она позволяет сканировать порты без установки реальных соединений. Это достигается путём использования неквитирующих пакетов, т. е. тех, которые похожи на имеющиеся в существующих соединениях. Но в ответ на такие пакеты можно получать пакеты диагностические. Т. е. получать информацию о соединении, при этом не быть «замеченным» брандмауэром или другим сетевым фильтром. Которые следят за «сканировщиками» портов.

Помимо всего прочего nmap умеет распознавать, какая ОС используется на проверяемом узле. Путём анализа некоторых особенностей, характерных для реализации стека TCP/IP для разных ОС. Для использования этой возможности существует ключ -O:

Как можно видеть, компьютер с IP-адресом 192.186.0.101 работает под управлением ОС Windows, предположительно Windows 7. Информация в отчёте довольно подробная, определён даже MAC-адрес сканируемого сетевого устройства.

Стоит рассмотреть некоторые примеры для команды nmap, которые могут пригодиться администраторам в их работе. Сканирование нескольких адресов:

Определение активных узлов в сети:

В этой команде используется формат записи, для обозначения подсети. В качестве параметров можно также указывать данные из файла:

Записи адресов в файле указываются также, как и в командной строке. И разделяться должны одним или несколькими пробелами или символами перевода строки. Для сканирования определённых портов:

или диапазона портов:

Сканирование всех портов:

Сканирование определённых типов портов (TCP или UDP):

Соответственно для указания UDP-портов следует указывать опцию -U. Для объединённого сканирования портов:

Для скрытого сканирования:

Сохранение результатов сканирования в файл:

Определить (с высокой степенью вероятности), работает ли на сканируемом узле брандмауэр или другой пакетный фильтр:

Определение только открытых портов:

Определение версии ОС, а также трассировки маршрутов:

Заключение

Как можно видеть, nmap – это действительно мощный инструмент для мониторинга и анализа безопасности сетевого окружения. Следует также всегда помнить, что с помощью одной только команды nmap система или сеть могут быть досконально изучены «посторонними» или не совсем добросовестными людьми. Поэтому системные администраторы всегда должны учитывать этот фактор для обеспечения безопасности вверенных им систем.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: