Все права на текст принадлежат автору: Fyodor .
Это короткий фрагмент для ознакомления с книгой.
Справочное руководство Nmap (Man Page)Fyodor

Справочное руководство Nmap (Man Page)



Содержание

Описание

Замечания о переводе

Сводка опций

Определение цели сканирования

Обнаружение хостов

Основы сканирования портов

Различные приемы сканирования портов

Определение портов и порядка сканирования

Обнаружение служб и их версий

Определение ОС

Скриптовый движок Nmap(NSE - Nmap Scripting Engine)

Опции управления временем и производительностью

Обход Брандмауэров/IDS

Вывод результатов

Различные опции

Взаимодействие во время выполнения

Примеры

Ошибки

Автор

Юридические уведомления

Unofficial Translation Disclaimer / Отречение неофициального перевода

Авторское право и лицензия Nmap

Creative Commons License для этого справочного руководства Nmap

Доступность исходного кода и общественные вклады

Отсутствие гарантии

Несоответствующее использование

Стороннее программное обеспечение

Классификация по контролю экспорта Соединенных Штатов

Имя

nmap — Утилита для исследования сети и сканер портов

Синопсис

nmap [ <Тип сканирования> ...] [ <Опции> ] { <цель сканирования> }

Описание


Примечание


Этот документ описывает версию Nmap 4.22SOC8. Последняя документация доступна на английском языке по адресу:

 https://nmap.org/book/man.html.


Nmap («Network Mapper») это утилита с открытым исходным кодом для исследования сети и проверки безопасности. Она была разработана для быстрого сканирования больших сетей, хотя прекрасно справляется и с единичными целями. Nmap использует сырые IP пакеты оригинальными способами, чтобы определить какие хосты доступны в сети, какие службы (название приложения и версию) они предлагают, какие операционные системы (и версии ОС) они используют, какие типы пакетных фильтров/брандмауэров используются и еще дюжины других характеристик. В тот время как Nmap обычно используется для проверки безопасности, многие сетевые и системные администраторы находят ее полезной для обычных задач, таких как контролирование структуры сети, управление расписаниями запуска служб и учет времени работы хоста или службы.

Выходные данные Nmap это список просканированных целей с дополнительной информацией по каждой в зависимости от заданных опций. Ключевой информацией является «таблица важных портов». Эта таблица содержит номер порта, протокол, имя службы и состояние. Состояние может иметь значение open (открыт), filtered (фильтруется), closed (закрыт) или unfiltered (не фильтруется). Открыт означает, что приложение на целевой машине готово для установки соединения/принятия пакетов на этот порт.Фильтруется означает, что брандмауэр, сетевой фильтр или какая-то другая помеха в сети блокирует порт, и Nmap не может установить открыт этот порт или закрыт. Закрытые порты не связаны ни с каким приложением, так что они могут быть открыты в любой момент. Порты расцениваются как не фильтрованные, когда они отвечают на запросы Nmap, но Nmap не может определить открыты они или закрыты. Nmap выдает комбинации открыт|фильтруется и закрыт|фильтруется, когда не может определить, какое из этих двух состояний описывает порт. Эта таблица также может предоставлять детали о версии программного обеспечения, если это было запрошено. Когда осуществляется сканирование по IP протоколу (-sO), Nmap предоставляет информацию о поддерживаемых IP протоколах, а не об открытых портах.

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

Типичное сканирование с использованием Nmap показано в Пример 1. Единственные аргументы, использованные в этом примере это -A, для определения версии ОС, сканирования с использованием скриптов и трассировки; -T4 для более быстрого выполнения; затем два целевых хоста.

Пример 1. Типичный пример сканирования с помощью Nmap

# nmap -A -T4 scanme.nmap.org playground


Starting Nmap ( https://nmap.org )

Interesting ports on scanme.nmap.org (64.13.134.52):

(The 1663 ports scanned but not shown below are in state: filtered)

PORT STATE SERVICE VERSION

22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99)

53/tcp open domain

70/tcp closed gopher

80/tcp open http Apache httpd 2.0.52 ((Fedora))

113/tcp closed auth

Device type: general purpose

Running: Linux 2.4.X|2.5.X|2.6.X

OS details: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11


Interesting ports on playground.nmap.org (192.168.0.40):

(The 1659 ports scanned but not shown below are in state: closed)

PORT STATE SERVICE VERSION

135/tcp open msrpc Microsoft Windows RPC

139/tcp open netbios-ssn

389/tcp open ldap?

445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds

1002/tcp open windows-icfw?

1025/tcp open msrpc Microsoft Windows RPC

1720/tcp open H.323/Q.931 CompTek AquaGateKeeper

5800/tcp open vnc-http RealVNC 4.0 (Resolution 400x250; VNC port: 5900)

5900/tcp open vnc VNC (protocol 3.8)

MAC Address: 00:A0:CC:63:85:4B (Lite-on Communications)

Device type: general purpose

Running: Microsoft Windows NT/2K/XP

OS details: Microsoft Windows XP Pro RC1+ through final release

Service Info: OSs: Windows, Windows XP


Nmap finished: 2 IP addresses (2 hosts up) scanned in 88.392 seconds


Замечания о переводе

Гуз Александр (Guz Alexander) <kalimatas@gmail.com>

Этот русский вариант Справочного Руководства Nmap является переводом версии 6184 оригинальной английской версии. Хотя я надеюсь, что данный перевод сделает Nmap более доступной для русскоязычных пользователей, я не могу гарантировать, что он является полным или является перевод последней официальной английской версии. Эта работа может модифицироваться или распространяться на основе лицензии Creative Commons Attribution License.


Сводка опций

Эта сводка опций выводится на экран, когда Nmap запускается без каких-либо опций; последняя версия всегда доступна здесь https://nmap.org/data/nmap.usage.txt. Это помогает людям запомнить наиболее употребляемые опции, но это сводка не может быть заменой документации, предоставленной в данном руководстве. Некоторые опции даже не включены в этот список.

Nmap 4.76 ( https://nmap.org )


Использование: nmap [Тип(ы) Сканирования] [Опции] {цель сканирования}


ОПРЕДЕЛЕНИЕ ЦЕЛИ СКАНИРОВАНИЯ:


  Можно использовать сетевые имена, IP адреса, сети и т.д.


  Пример: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254


  -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 <диапазон_портов>: Сканирование только определенных портов


    Пример: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080


  -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: Вывести эту страницу помощи


ПРИМЕРЫ:


  nmap -v -A scanme.nmap.org


  nmap -v -sP 192.168.0.0/16 10.0.0.0/8


  nmap -v -iR 10000 -PN -p 80


ДЛЯ СПРАВКИ ПО ДРУГИМ ОПЦИЯМ, ОПИСАНИЙ И ПРИМЕРОВ СМОТРИТЕ MAN СТРАНИЦУ


Определение цели сканирования

В командной строке Nmap все, что не является опцией (или аргументом опции), рассматривается как цель сканирования. В простейшем случае для сканирования используется IP адрес или сетевое имя целевой машины.

Иногда необходимо просканировать целую сеть. Для этого Nmap поддерживает CIDR адресацию. Вы можете добавить /<кол-во бит>к IP адресу или сетевому имени и Nmap просканирует каждый IP адрес, для которого первые <кол-во бит> такие же как и у заданного хоста. Например, 192.168.10.0/24 просканирует 256 хостов между 192.168.10.0 (бинарное: 11000000 10101000 00001010 00000000) и 192.168.10.255 (бинарное: 11000000 10101000 00001010 11111111) включительно. 192.168.10.40/24 сделает абсолютно то же самое. Зная, что IP адрес scanme.nmap.org 64.13.134.52, при записи типа scanme.nmap.org/16 будет произведено сканирование 65,536 IP адресов между 64.13.0.0 и 64.13.255.255. Наименьшее допустимое значение /0, при котором будет просканирован весь Интернет. Наибольшее значение /32, при котором будет просканирован только заданный хост или IP адрес, т.к. все адресные биты заблокированы. ...




Все права на текст принадлежат автору: Fyodor .
Это короткий фрагмент для ознакомления с книгой.
Справочное руководство Nmap (Man Page)Fyodor