Nmap — мощный инструмент для исследования и обеспечения безопасности сетей. Он популярен среди системных администраторов и специалистов по информационной безопасности. Даже в культовом фильме "Матрица" этот инструмент использовался для взлома.
nmap <ключи> <цель>
nmap scanme.nmap.org
Через несколько секунд получаем результат:
I
На стандартных портах открыты SSH и HTTP. Nmap различает несколько состояний портов: open (открыт), filtered (фильтруется), closed (закрыт) и unfiltered (нефильтруется).
Во время сканирования можно нажать пробел, чтобы увидеть текущий прогресс. Результат будет таким:
Хотя точную версию ядра определить невозможно, Nmap может дать представление о системе.
Пример ответа:
Мы узнали точные названия и версии служб, а также операционную систему.
Этот режим выводит много информации и может занять несколько минут.
Если нужно просканировать конкретный диапазон адресов, выполним команду:
Ответ будет таким:
Что такое Nmap?
Nmap (Network Mapper) можно перевести как "сетевой картограф". Это мощное средство для анализа сетей и проверки их безопасности. Nmap работает на различных операционных системах, включая Linux, Windows, FreeBSD, OpenBSD, Solaris и Mac OS X, и распространяется бесплатно.Установка Nmap на Debian
В стандартной поставке Debian Nmap отсутствует, но его можно легко установить с помощью следующей команды:
Код:
aptitude install nmap
Установка Nmap на Ubuntu
Код:
sudo apt install nmap
Методы сканирования
Nmap поддерживает множество методов сканирования: UDP, TCP connect(), TCP SYN (полуоткрытое), FTP proxy, Reverse-ident, ICMP (ping), FIN, ACK, SYN и NULL-сканирование. Метод выбирается с помощью ключей. Пример запуска команды:nmap <ключи> <цель>
Пример использования
Для демонстрации используем тестовый хост, предоставленный разработчиками Nmap — scanme.nmap.org. Запустим сканирование от имени суперпользователя:nmap scanme.nmap.org
Через несколько секунд получаем результат:
I
Код:
nteresting ports on scanme.nmap.org (74.207.244.221):
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
На стандартных портах открыты SSH и HTTP. Nmap различает несколько состояний портов: open (открыт), filtered (фильтруется), closed (закрыт) и unfiltered (нефильтруется).
Определение операционной системы
Для определения операционной системы используем ключ -O:
Код:
nmap -O scanme.nmap.org
Во время сканирования можно нажать пробел, чтобы увидеть текущий прогресс. Результат будет таким:
Код:
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%), ...
Хотя точную версию ядра определить невозможно, Nmap может дать представление о системе.
Сканирование нескольких хостов
Для сканирования нескольких хостов их просто перечисляют через пробел:
Код:
nmap -O example.com example2.com
Определение версий служб
Чтобы узнать детали о запущенных службах, используем ключ -sV:
Код:
nmap -sV example.com example2.com
Пример ответа:
Код:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3p1 Debian 3ubuntu7 (protocol 2.0)
80/tcp open http Apache httpd 2.2.14 ((Ubuntu))
Service Info: OS: Linux
Мы узнали точные названия и версии служб, а также операционную систему.
Агрессивное сканирование
Для агрессивного сканирования используем ключ -A:
Код:
# nmap -A scanme.nmap.org
Этот режим выводит много информации и может занять несколько минут.
Проверка диапазона IP-адресов
Для проверки диапазона IP-адресов используем ключ -sP:
Код:
nmap -sP 192.168.1.0/24
Если нужно просканировать конкретный диапазон адресов, выполним команду:
Код:
nmap -sP 192.168.1.2-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)