Найти в Дзене

Nmap — сканер сети

Оглавление

Nmap — "Network Mapper". Бесплатная утилита с открытым исходным кодом для проверки сети и аудита безопасности. Незаменимый инструмент для безопасников и админов.

Есть версии для разных ОС: 

  • Linux (all distributions)
  • Microsoft Windows
  • Mac OS X
  • FreeBSD, OpenBSD, NetBSD
  • Sun Solaris
  • Amiga, HP-UX, и другие

Для работы в Windows дополнительно ставится GUI - Zenmap.

Последняя версия утилиты на данный момент 7.70.

-2

Ссылки

https://nmap.org/

Установка

Ставить будем на винду. Скачиваем nmap-7.70-setup.exe с официального сайта.

-3

Запускаем файлик.

-4

Инсталлятор.

-5

Принимаем лицензионное соглашение -I Agree.

-6

Можно выбрать компоненты. Next

-7

Путь установки. Install - Побежала установка.

-8

В процессе установки запускается второй инсталлятор. Нужно установить Npcap.

-9

I Agree.

-10

Оставляю настройки по умолчанию. Install.

-11

Ждём.

-12

Next.

-13

Finish.

-14

Возвращаемся в инсталлятор Nmap. Next.

-15

Выбираем галки - куда установить ярлыки (мне почему-то ярлык на рабочий стол так и не поставился). Next.

-16

Установка Nmap завершена.

Пример работы

-17

Опции

  • Определение цели сканирования:
  • -iL <имя_входного_файла>: Использовать список хостов/сетей из файла
  • -iR <количество_хостов>: Выбрать произвольные цели
  • --exclude <хост1[,хост2][,хост3],...>: Исключить хосты/сети
  • --excludefile <имя_файла>: Исключить список из файла
  • Обнаружение хостов:
  • -sL: Сканирование с целью составления списка - просто составить список целей для сканирования
  • -sP: Пинг сканирование - просто определить, работает ли хост
  • -PN: Расценивать все хосты как работающие -- пропустить обнаружение хостов
  • -PS/PA/PU [список_портов]: TCP SYN/ACK или UDP пингование заданных хостов
  • -PE/PP/PM: Пингование с использованием ICMP эхо запросов, запросов временной метки и сетевой маски
  • -PO [список_протоколов]: Пингование с использованием IP протокола
  • -n/-R: Никогда не производить DNS разрешение/Всегда производить разрешение [по умолчанию: иногда]
  • --dns-servers <сервер1[,сервер2],...>: Задать собственные DNS сервера
  • --system-dns: Использовать системный DNS преобразователь
  • Различные приемы сканирования:
  • -sS/sT/sA/sW/sM: TCP SYN/с использованием системного вызова Connect()/ACK/Window/Maimon сканирования
  • -sU: UDP сканирование
  • -sN/sF/sX: TCP Null, FIN и Xmas сканирования
  • --scanflags <флаги>: Задать собственные TCP флаги
  • -sI <зомби_хост[:порт]>: "Ленивое" (Idle) сканирование
  • -sO: Сканирование IP протокола
  • -b <FTP_хост>: FTP bounce сканирование
  • --traceroute: Отслеживать путь к хосту
  • --reason: Выводить причину нахождения порта в определенном состоянии
  • Определение портов и порядка сканирования:
  • -p <диапазон_портов>: Сканирование только определенных портов
  • -F: Быстрое сканирование - Сканирование ограниченного количества портов
  • -r: Сканировать порты последовательно - не использовать случайный порядок портов
  • --top-ports <количество_портов>: Сканировать <количество_портов> наиболее распространенных портов
  • --port-ratio <рейтинг>: Сканировать порты с рейтингом большим чем <рейтинг>
  • Определение служб и их версий:
  • -sV: Исследовать открытые порты для определения информации о службе/версии
  • --version-intensity <уровень>: Устанавливать от 0 (легкое) до 9 (пробовать все запросы)
  • --version-light: Ограничиться наиболее легкими запросами (интенсивность 2)
  • --version-all: Использовать каждый единичный запрос (интенсивность 9)
  • --version-trace: Выводить подробную информацию о процессе сканирования (для отладки)
  • Сканирование с использованием скриптов:
  • -sC: эквивалентно опции --script=default
  • --script=<Lua скрипты>: <Lua скрипты> это разделенный запятыми список директорий, файлов скриптов или категорий скриптов
  • --script-args=<имя1=значение1,[имя2=значение2,...]>: Передача аргументов скриптам
  • --script-trace: Выводить все полученные и отправленные данные
  • --script-updatedb: Обновить базу данных скриптов
  • Определение ОС:
  • -O: Активировать функцию определения ОС
  • --osscan-limit: Использовать функцию определения ОС только для "перспективных" хостов
  • --osscan-guess: Угадать результаты определения ОС
  • Опции управления временем и производительностью:
    Опции, принимающие аргумент <время>, задаются в миллисекундах, пока вы не добавите 's' (секунды), 'm' (минуты), или 'h' (часы) к значению (напр. 30m).
  • -T[0-5]: Установить шаблон настроек управления временем (больше - быстрее)
  • --min-hostgroup/max-hostgroup <кол_хостов>: Установить размер групп для параллельного сканирования
  • --min-parallelism/max-parallelism <кол_хостов>: Регулирует распараллеливание запросов
  • --min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <время>: Регулирует время ожидания ответа на запрос
  • --max-retries <количество_попыток>: Задает максимальное количество повторных передач запроса
  • --host-timeout <время>: Прекращает сканирование медленных целей
  • --scan-delay/--max-scan-delay <время>: Регулирует задержку между запросами
  • --min-rate <число>: Посылать запросы с интенсивностью не меньше чем <число> в секунду
  • --max-rate <число>: Посылать запросы с интенсивностью не больше чем <число> в секунду
  • Обход межсетевых экрнов, систем IDS:
  • -f; --mtu <значение>: Фрагментировать пакеты (опционально с заданным значение MTU)
  • -D <фикт_хост1,фикт_хост2[,ME],...>: Маскировка сканирования с помощью фиктивных хостов
  • -S <IP_адрес>: Изменить исходный адрес
  • -e <интерфейс>: Использовать конкретный интерфейс
  • -g/--source-port <номер_порта>: Использовать заданный номер порта
  • --data-length <число>: Добавить произвольные данные к посылаемым пакетам
  • --ip-options <опции>: Посылать пакет с заданным ip опциями
  • --ttl <значение>: Установить IP поле time-to-live (время жизни)
  • --spoof-mac <MAC_адрес/префикс/название производителя>: Задать собственный MAC адрес
  • --badsum: Посылать пакеты с фиктивными TCP/UDP контрольными суммами
  • Вывод результатов:
  • -oN/-oX/-oS/-oG <файл>: Выводить результаты нормального, XML, s|<rIpt kIddi3, и Grepable формата вывода, соответственно, в заданный файл
  • -oA <базовое_имя_файла>: Использовать сразу три основных формата вывода
  • -v: Увеличить уровень вербальности (задать дважды или более для увеличения эффекта)
  • -d[уровень]: Увеличить или установить уровень отладки (до 9)
  • --open: Показывать только открытые (или возможно открытые) порты
  • --packet-trace: Отслеживание принятых и переданных пакетов
  • --iflist: Вывести список интерфейсов и роутеров (для отладки)
  • --log-errors: Записывать ошибки/предупреждения в выходной файл нормального режима
  • --append-output: Добавлять в конец, а не перезаписывать выходные файлы
  • --resume <имя_файла>: Продолжить прерванное сканирование
  • --stylesheet <путь/URL>: Устанавливает XSL таблицу стилей для преобразования XML вывода в HTML
  • --webxml: Загружает таблицу стилей с Nmap.Org
  • --no-stylesheet: Убрать объявление XSL таблицы стилей из XML
  • Прочие опции:
  • -6: Включить IPv6 сканирование
  • -A: Активировать функции определения ОС и версии, сканирование с использованием скриптов и трассировку
  • --datadir <имя_директории>: Определяет место расположения файлов Nmap
  • --send-eth/--send-ip: Использовать сырой уровень ethernet/IP
  • --privileged: Подразумевать, что у пользователя есть все привилегии
  • --unprivileged: Подразумевать, что у пользователя нет привилегий для использования сырых сокетов
  • -V: Вывести номер версии
  • -h: Вывести эту страницу помощи

Источник:
https://internet-lab.ru/nmap

Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.