Как сканировать порты TCP с помощью Nmap

Важным методом точного определения того, какие службы работают в вашей сети, является сканирование портов. Сканирование портов может дать вам точный обзор поверхности атаки вашего компьютера и сети. В некоторых случаях вы можете обнаружить, что у вас запущены службы, о которых вы не ожидали.

Протокол управления передачей или TCP - это стандарт, позволяющий устанавливать соединения между компьютерами по сети. TCP использует трехстороннее рукопожатие для открытия соединения, которое затем остается открытым до истечения времени ожидания или до закрытия соединения. Это не означает, что соединение всегда передает данные, это просто означает, что обе стороны сохраняют детали соединения и могут немедленно возобновить отправку и получение данных.

Nmap - стандартный инструмент для сканирования портов. Он разработан в первую очередь для работы в Linux, но есть и версии для Windows. Также доступен графический интерфейс, но использование командной строки по-прежнему является стандартом.

Как использовать Nmap

Чтобы проверить, установлен ли у вас Nmap на компьютере с Linux, выполните команду «nmap». Если вы получили страницу справки, значит, она установлена ​​и готова к запуску, если вы получите сообщение об ошибке о том, что команда «не найдена», вам необходимо установить Nmap.

Страница справки очень плотная и показывает множество опций, которые могут сбивать с толку. Основы, необходимые для сканирования TCP-портов, относительно просты. Базовая структура, которая вам нужна, - это «nmap [тип сканирования] [параметры] {целевая спецификация}».

Для сканирования портов TCP вы можете использовать один из двух типов сканирования: TCP или SYN. Сканирование TCP пытается установить полное соединение с каждым портом, завершая трехстороннее рукопожатие. Сканирование SYN незначительно нарушает протокол и никогда не отправляет третье сообщение трехстороннего рукопожатия. SYN-сканирование часто менее нагружает системные ресурсы, поскольку устройствам не нужно поддерживать открытыми сразу несколько подключений. поскольку соединения никогда не устанавливаются полностью, они также работают быстрее, чем сканирование TCP, но им потребуется root разрешения. Сканирование TCP указывается с помощью флага «-sT», а сканирование SYN - с помощью «-sS».

Совет: трехстороннее рукопожатие - это способ инициализации TCP-соединения, он включает три сообщения, «SYN, SYN-ACK и ACK» отправляются от клиента к серверу, от сервера к клиенту, затем от клиента к серверу. соответственно.

Как указать параметры сканирования

Раздел опций является необязательным, но в целом есть ряд полезных. Вы можете включить более подробные результаты сканирования, повысив уровень детализации с помощью «-v», вы можете повысить уровень детализации до третьего уровня с помощью «-vvv». Вы можете запустить обнаружение операционной системы, определение версии, сканирование скриптов и трассировку с помощью флага «-A», хотя это займет немного больше времени.

Вы можете сканировать адреса IPv4 или IPv6 за раз, IPv4 является значением по умолчанию, если вы хотите сканировать адреса IPv6, вам необходимо использовать флаг «-6». Иногда Nmap запускает быстрое сканирование ping, чтобы определить, какие точки доступа активны. Если это пропускает хосты, которые вы хотите протестировать, вы можете отключить его с помощью флага «-Pn». Если вы укажете большой диапазон, сканирование может занять много времени. Флаг «-T4» ускорит сканирование и вряд ли что-то пропустит, он может перегружать медленные сети или устройства, так как вывод трафика будет значительно увеличен.

Как указать IP-адрес и диапазоны портов

По умолчанию Nmap просканирует 1000 наиболее часто используемых портов, вы можете вручную установить диапазон портов, используя флаг «-p», а затем указав диапазон без пробелов. Диапазоны портов могут быть указаны с помощью значений, разделенных запятыми, диапазонов через дефис или их комбинации. Например, флаги «-p22», «-p1-65535» и «-p21-25,80,139,8080» будут сканировать порт 22, все порты от 1 до 65535 и порты с 21 по 25, 80, 239, и 8080 соответственно. Также можно указать флаг «–top-ports [number]» вместо того, чтобы сканировать верхние [number] наиболее распространенные порты. Если вы хотите указать все порты, вы можете использовать сокращение «-p-».

Совет: номера портов находятся в диапазоне от 0 до 65535, хотя 0 технически использовать нельзя.

Последнее, что вам нужно указать, - это IP-адреса устройств, которые вы хотите протестировать. Для этого просто перечислите все IP-адреса, которые вы хотите просканировать, они должны быть разделены пробелами и могут быть перечислены индивидуально, по диапазонам через дефис или в нотации CIDR. Например, «191.168.0.1» просканирует этот единственный IP-адрес, «192.168.0.1-5» просканирует пять IP-адресов между 102.168.0.1 и 192.168.0.5, наконец, «192.168.0.1/24» будет сканировать все IP-адреса между 192.168.0.1 и 192.168.0.255.

Общая команда должна выглядеть примерно так: «nmap -sS -vvv -A -p- 127.0.0.1», «nmap -sS -v -p80,443,8080 192.168.0.1/24», «nmap -sS –Топ-порты 10000 -6:: 1 ”

Соберите аргументы, которые вы хотите использовать, затем запустите команду.