Nmap (Network Mapper) — это мощный инструмент для исследования сети и аудита безопасности, который предоставляет множество режимов работы для анализа открытых портов, проверки доступности служб и получения информации о целевых системах.
Основные режимы сканирования
-sS (SYN-сканирование)
Это наиболее популярный и быстрый режим сканирования, также известный как “полуоткрытое” сканирование. Оно отправляет SYN-пакет и анализирует ответ (SYN/ACK для открытого порта, RST для закрытого).
Пример:
nmap -sS 192.168.1.1
Преимущества:
- Быстрее, чем полное соединение.
- Менее заметен для системного администратора.
Недостатки:
- Может быть заблокирован брандмауэрами.
-sT (TCP Connect-сканирование)
Этот режим использует стандартное установление TCP-соединения (3-way handshake).
Пример:
nmap -sT 192.168.1.1
Преимущества:
- Работает без привилегий суперпользователя.
Недостатки:
- Медленнее и более заметен в логах системы.
-sA (ACK-сканирование)
Используется для проверки правил брандмауэра и определения, какие порты пропускают трафик.
Пример:
nmap -sA 192.168.1.1
Преимущества:
- Эффективен для анализа брандмауэра.
Недостатки:
- Не определяет, открыт ли порт.
-sX (Xmas-сканирование)
Отправляет TCP-пакеты с установленными флагами FIN, PSH и URG.
Пример:
nmap -sX 192.168.1.1
Преимущества:
- Может обходить некоторые старые брандмауэры.
Недостатки:
- Малоэффективен против современных систем.
-sU (UDP-сканирование)
Используется для проверки открытых UDP-портов.
Пример:
nmap -sU 192.168.1.1
Преимущества:
- Позволяет определить открытые UDP-службы.
Недостатки:
- Медленнее, чем TCP-сканирование.
Фрагментация пакетов (-f)
Флаг -f используется для фрагментации пакетов, чтобы обойти некоторые простые системы обнаружения вторжений (IDS).
Пример:
nmap -sS -f 192.168.1.1
Преимущества:
- Может уменьшить вероятность обнаружения сканирования.
Недостатки:
- Неэффективно против современных систем IDS.
Преимущества:
- Может уменьшить вероятность обнаружения сканирования.
Недостатки:
- Неэффективно против современных систем IDS.
Настройка скорости сканирования (T1-T5)
Ключи T1-T5 управляют скоростью выполнения сканирования. Чем выше значение, тем быстрее выполняется сканирование.
- T1 (очень медленно): подходит для скрытного сканирования.
- T2 (медленно): используется для обхода некоторых IDS.
- T3 (средне): стандартный режим.
- T4 (быстро): подходит для стабильных сетей.
- T5 (максимальная скорость): используется в локальных сетях.
Пример:
nmap -sS -T4 192.168.1.1
Преимущества:
- Позволяет настроить баланс между скоростью и незаметностью.
Недостатки:
- Высокие уровни (T4, T5) могут быть обнаружены.
Дополнительные параметры
—open
Отображает только открытые порты.
Пример:
nmap --open 192.168.1.1
Преимущества:
- Удобно для быстрого анализа активных служб.
-sn (Ping-сканирование)
Определяет, какие устройства активны в сети, без сканирования портов.
Пример:
nmap -sn 192.168.1.0/24
Преимущества:
- Быстрое сканирование активных хостов.
-sV (Определение версий)
Определяет версии служб на открытых портах.
Пример:
nmap -sV 192.168.1.1
Преимущества:
- Полезно для анализа уязвимостей.
-O (Определение ОС)
Определяет операционную систему целевого хоста.
Пример:
nmap -O 192.168.1.1
Преимущества:
- Полезно для сбора информации об устройстве.
-v (Подробный вывод)
Включает подробный вывод информации во время выполнения сканирования.
Пример:
nmap -v 192.168.1.1
реимущества:
- Позволяет следить за процессом сканирования.
—osscan-guess
Включает режим предположений при определении ОС, если точное определение невозможно.
Пример:
nmap -O --osscan-guess 192.168.1.1
Преимущества:
- Может дать полезную информацию в сложных случаях.
-PU (UDP Ping)
Отправляет UDP-запросы для проверки доступности хостов.
Пример:
nmap -sn -PU 192.168.1.0/24
Преимущества:
- Эффективен для обнаружения хостов в сети.
-Sc
- Запускает скрипты по умолчанию (default scripts) — предопределенный набор скриптов из категории
default, которые считаются безопасными и информативными. - Эквивалентна использованию
--script=default. - Обычно используется вместе с опцией
-sV(определение версий сервисов) для комплексного анализа.
Nmap-vulscan
Vulscan – это скрипт NSE, который помогает Nmap обнаруживать уязвимости в целях на основе обнаружения сервисов и версий.
vulscan – это модуль для Nmap, который превращает его в сканер уязвимостей.
Пример:
nmap -sV —script=vuln 192.168.0.1
Изменение User Agent
Хотя Nmap не использует User Agent в классическом понимании (как это делает браузер), вы можете изменять содержимое заголовков, например, для HTTP-запросов при использовании NSE (Nmap Scripting Engine).
Пример настройки User Agent в скрипте:
nmap —script http-useragent -p 80 —script-args http-useragent=’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36′ 192.168.1.1
Преимущества:
- Может помочь в маскировке активности.
Недостатки:
- Требует использования специфических NSE-скриптов.
Заключение
Nmap предоставляет гибкие и мощные возможности для сетевого сканирования. Использование ключей, а также настройка User Agent позволяет адаптировать сканирование под конкретные задачи. При этом важно помнить об этических аспектах и законах, регулирующих использование подобных инструментов. Используйте Nmap ответственно!
Для большинства случаев хватает использования опций
nmap -sC -sV 192.168.0.1
Для сканирования машин на os windows рекомендуется еще использовать опцию -Pn
-PN: Расценивать все хосты как работающие — пропустить обнаружение хостов
nmap -sC -sV -PN 192.168.0.1