Выбрать главу

--script-trace

Эта опция делает то же самое, что и --packet-trace, но на один ISO уровень выше. Если задана эта опция, то все входящие и исходящие соединения, осуществляемые скриптом, выводятся на экран. Выводимая информация включает в себя используемый коммуникационный протокол, источник, цель и переданные данные. Если более 5% переданных данных невозможно вывести на экран, то вывод будет представлять собой шестнадцатеричный (hex) дамп.

--script-updatedb

Этой опцией обновляется база скриптов scripts/script.db, которая используется Nmap для определения доступных скриптов по умолчанию и их категорий. Обновлять базу необходимо, только если вы добавили или удалили NSE скрипты из директории scripts, или поменяли категорию какого-нибудь скрипта. Эта опция обычно используется без аргументов: nmap --script-updatedb.

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

Наиболее приоритетной стороной развития Nmap для меня всегда была производительность. Сканирование по умолчанию (nmap <имя_хоста>) какого-либо хоста в моей локальной сети занимает пятую долю секунды. Этого едва хватает, чтобы моргнуть, но становится существенным, когда вы сканируете сотни или тысячи хостов. Более того, некоторые типы сканирования, как например, UDP или сканирование с целью определения версии могут в значительной степени увеличить время сканирования. Этому также могут поспособствовать настройки некоторых брандмауэров, где есть ограничения на количество ответов. Хотя в Nmap используются параллелизм и различные продвинутые алгоритмы для уменьшения времени сканирования, у пользователя есть возможность полностью контролировать работу программы. Опытные пользователи Nmap задают команды таким образом, чтобы получать только необходимую им информацию и в удовлетворяющие им сроки.

Способами увеличения скорости сканирования могут быть пропуск не критичных тестов, или обновление Nmap до последней версии (улучшения производительности выходят довольно часто). Оптимизация параметров опций управления временем также может значительно повлиять на скорость сканирования. Эти опции описаны ниже.

Некоторые опции могут принимать параметр время. По умолчанию он задается в миллисекундах, но вы можете добавить ‘s’, ‘m’ или ‘h’ к значению, чтобы задать его в секундах, минутах или часах. Поэтому для опции --host-timeout аргументы 900000, 900s и 15m означают одно и то же.

--min-hostgroup <количество_хостов>; --max-hostgroup <количество_хостов> (Регулирует размер групп для параллельного сканирования)

В Nmap есть возможность осуществлять сканирование портов или сканирование с целью определения версии нескольких хостов параллельно. Это происходит путем разделения целевого IP пространства на группы, а затем сканирования одной группы за раз. В общем случае целесообразно использовать большие группы. Недостатком является то, что вы не можете узнать информацию о каком-либо хосте, пока не закончится сканирование всей группы. Таким образом, если Nmap начнет сканирование группы из 50-ти хостов, то пользователь не будет получать никакой информации (кроме обновлений информации предлагаемых в вербальном режиме), пока не будет завершено сканирование всех 50-ти хостов.

По умолчанию Nmap использует компромиссный подход к решению этой проблемы. Сначала производится сканирование небольших групп из 5-ти хостов, поэтому первые результаты приходят быстро, затем размер группы постепенно увеличивается до максимального - 1024. Точные значения по умолчанию зависят от заданных опций. Для большей эффективности Nmap использует группы больших размеров для UDP сканирования и для некоторых типов TCP сканирования портов.

Когда максимальный размер группы задан опцией --max-hostgroup, Nmap не будет его превышать. Минимальный размер группы задается опцией --min-hostgroup, и Nmap будет пытаться поддерживать размер групп больше этого уровня. Возможно Nmap придется использовать группы меньше заданных размеров, когда для выполнения условия минимальности будет не хватать целевых хостов. Эти опции могут быть использованы для удержания размера группы внутри некоторого диапазона, хотя это редко необходимо.

Эти опции не имеют эффекта на фазе обнаружения хостов. Там используются обычное ping сканирование (-sP). При сканировании с целью обнаружения хостов всегда используются большие группы для увеличения скорости и точности.