Я пытаюсь определить, можно ли указать типы зондов для использования Nmap. Например, я хочу просканировать подсеть (скажем, 192.168.0.0/24) и проверить каждый порт на каждом хосте, чтобы узнать, работает ли на этом порту веб-сервер - цель состоит в том, чтобы найти службу, работающую на необычных портах.
Я так понимаю, что по умолчанию Nmap проверяет наиболее распространенные комбинации зонд / порт. Я также понимаю, что опция -sV --version-all будет пытаться выполнить все проверки на всех указанных портах. Однако это занимает очень много времени, и если меня интересует только поиск веб-серверов, работающих на необычных портах, мне не нужно использовать все доступные пробы. Должен быть способ быстрее.
Кроме того, я относительно новичок в сообществе StackExchange; Если этот вопрос лучше задать в другом сообществе / сети, дайте мне знать.
Вы можете уменьшить количество отправляемых зондов, используя --version-intensity
вариант и выбрав меньшее значение интенсивности. в nmap-service-probes
файл, каждый зонд имеет rarity
значение, и если редкость выше, чем интенсивность, зонд не будет отправлен (если только он не является особенно важным зондом для этого номера порта, как указано ports
линия). Подавляющее большинство HTTP-ответов находится в GetRequest
и GenericLines
зонды, которые имеют rarity
из 1. Итак, простой ответ на ваш вопрос заключается в том, что эта команда найдет большинство веб-серверов с минимальным количеством отправленных зондов:
nmap --version-intensity 1 -sV
Вы также можете использовать --version-light
как сокращение для --version-intensity 3
, который добавляет лишь несколько дополнительных зондов.
Поскольку вас интересуют только HTTP-серверы, на которых нет баннера, вы также можете сократить время, затрачиваемое на ожидание баннера до NULL, путем редактирования nmap-service-probes
файл и изменение totalwaitms
значение чего-то меньшего. Как только вы начнете вносить изменения в nmap-service-probes
, вы можете предпринять другие действия, например изменить редкость всех других зондов на 9
, но не забудьте вернуть его обратно, если вы планируете использовать этот файл для любого обычного сканирования. Если вы решили сделать кастом nmap-service-probes
файл, вы можете использовать --versiondb
возможность указать на него вместо того, чтобы перезаписывать тот, который поставляется с Nmap.
Конечно nmap
можете это сделать - просто прочтите man
страница или info
страницу, чтобы узнать, какие аргументы / переключатели / параметры использовать.
И да, это было бы лучше на суперпользователе ...
Тем не менее, если вы используете zenmap
- интерфейс GUI для nmap
- он позволяет вам сделать этот выбор с помощью графического интерфейса, а затем показывает фактическую командную строку, которую вы бы запускали для простого nmap
.
Невозможно точно указать зонды в командной строке, но вы можете удалить те, которые были найдены в nmap-service-probes
кроме тех, которые вам требуются. В качестве альтернативы вы можете скомпилировать свой собственный, используя источник и редактирование nmap/service_scan.cc
только обрабатывать nextProbes
где probe->getName()
соответствует регулярному выражению, похожему на http.*