NMAP - как сканер портов хостов в сети

  • Михаил
  • 12 мин. на прочтение
  • 116
  • 30 Jan 2013
  • 30 Jan 2013

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

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

Например, с помощью скриптов можно автоматически обнаруживать новые уязвимости безопасности в вашей сети. Namp может использоваться с хорошими и плохими намерениями, будьте аккуратны, чтобы не использовать 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 - определять операционную систему;
  • -T[0-5] - скорость сканирования, чем больше, тем быстрее;
  • -D - маскировать сканирование с помощью фиктивных IP;
  • -S - изменить свой IP адрес на указанный;
  • -e - использовать определенный интерфейс;
  • --spoof-mac - установить свой MAC адрес;
  • -A - определение операционной системы с помощью скриптов.

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

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

nmap 10.10.0.9

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

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

nmap -sV 10.10.0.9

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

nmap -sC 10.10.0.9 -p 25

Воспользуемся расширенными опциями, и сразу получим развернутую информацию.

nmap -sS -F -O -sR -sV 10.10.0.9