0Pricing
Ethical Hacking Academy · Урок

Методы сканирования портов

SYN, connect и UDP

«Методы сканирования портов» — бесплатный урок Ethical Hacking Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ethical Hacking Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ethical Hacking Academy содержит 4 уроков всего.

Зачем сканировать порты

Открытые порты показывают, какие службы запущены на узле, то есть дают карту поверхности атаки. Сканирование портов определяет, какие порты TCP и UDP открыты, закрыты или фильтруются.

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

Состояния портов

Nmap сообщает о каждом порте одно из следующих состояний:

  • открыт: служба активно принимает соединения.
  • закрыт: порт доступен, но служба его не прослушивает.
  • фильтруется: брандмауэр блокирует зонды, поэтому Nmap не может определить состояние.
  • открыт|фильтруется и закрыт|фильтруется: неоднозначные результаты.

Трёхэтапное рукопожатие TCP

Для понимания сканирования необходимо разобраться в рукопожатии TCP:

  • Клиент отправляет SYN.
  • Если порт открыт, сервер отвечает SYN-ACK.
  • Клиент отправляет ACK, завершая соединение.

Закрытый порт отвечает RST. Методы сканирования различаются тем, насколько далеко они проходят в этом рукопожатии.

SYN-сканирование

SYN-сканирование (-sS) используется по умолчанию при запуске от имени root. Nmap отправляет SYN, получает SYN-ACK (порт открыт) или RST (порт закрыт), а затем отправляет RST, чтобы не завершать рукопожатие.

Это «полуоткрытое» сканирование выполняется быстро и сравнительно незаметно, поскольку полное соединение не устанавливается. Для него нужны права на необработанные сокеты.

sudo nmap -sS 192.168.1.10

Сканирование подключением

Сканирование подключением (-sT) завершает полное трёхэтапное рукопожатие с помощью сетевого API операционной системы. Специальные права не нужны, поэтому это запасной вариант для пользователей без соответствующих прав.

Поскольку соединение устанавливается полностью, такой способ заметнее и с большей вероятностью будет записан в журналах служб цели.

nmap -sT 192.168.1.10

Сканирование UDP

Сканирование UDP (-sU) обнаруживает службы, такие как DNS, SNMP и DHCP, использующие UDP. UDP не устанавливает соединение, поэтому сканирование медленное и сложное:

  • Отсутствие ответа часто означает «открыт|фильтруется».
  • Сообщение ICMP о недоступности порта означает, что порт закрыт.

О службах UDP часто забывают, поэтому они могут скрывать важные результаты.

sudo nmap -sU --top-ports 50 192.168.1.10

Скрытное сканирование

Некоторые методы используют необычные сочетания флагов, чтобы обходить простые брандмауэры и избегать записи SYN в журналы:

  • FIN (-sF): установлен только флаг FIN.
  • NULL (-sN): флаги не установлены.
  • Xmas (-sX): установлены FIN, PSH и URG — пакет «сияет, как рождественская ёлка».

Эти методы опираются на поведение, описанное в RFC, и часто работают только в некоторых реализациях сетевого стека.

sudo nmap -sX 192.168.1.10

Выбор портов

Управляйте списком сканируемых портов, чтобы соблюсти баланс между скоростью и охватом:

  • -p 80,443 — определённые порты.
  • -p 1-1000 — диапазон.
  • -p- — все 65535 портов.
  • --top-ports 100 — 100 наиболее распространённых портов.
  • -F — быстрое сканирование 100 наиболее распространённых портов.
nmap -p- 192.168.1.10
nmap --top-ports 100 192.168.1.10

Шаблоны темпа

Флаг -T задаёт темп от 0 (параноидальный) до 5 (безумный):

  • -T0/-T1: очень медленно, чтобы уклоняться от IDS.
  • -T3: сбалансированный вариант по умолчанию.
  • -T4: быстрее, обычно используется в надёжных сетях.
  • -T5: агрессивно, возможна потеря результатов.

Более быстрое сканирование заметнее и повышает риск неточностей.

nmap -sS -T4 -p- 192.168.1.10

Основы обхода брандмауэров

Nmap предлагает параметры для проверки устойчивости брандмауэров и IDS:

  • -f фрагментирует пакеты.
  • -D использует ложные адреса источника.
  • --source-port подменяет доверенный порт источника, например 53.

Используйте эти параметры только в разрешённых проверках, чтобы оценивать возможности обнаружения.

Составление практического сканирования

На практике эти параметры комбинируют. Распространённое тщательное сканирование TCP выбирает метод сканирования, все порты, повышенный темп и сохранение результатов.

Начните с широкого сканирования, чтобы найти открытые порты, а затем выполните целевые дополнительные проверки (определение версий, скрипты) только для действительно открытых портов. Такой двухэтапный подход быстрее и незаметнее, чем выполнение всех действий сразу.

sudo nmap -sS -p- -T4 -oA tcp_all 192.168.1.10
# Then deep-scan only the open ports found

Быстрая проверка

Сопоставьте метод сканирования с его поведением.

Итоги

Вы изучили методы сканирования портов:

  • Состояния портов: открыт, закрыт, фильтруется и неоднозначные варианты.
  • SYN-сканирование (-sS) — скрытный вариант по умолчанию; подключение (-sT) не требует прав, но заметнее.
  • UDP (-sU) работает медленно, но обнаруживает службы, о которых часто забывают.
  • Сканирование FIN/NULL/Xmas обходит простые брандмауэры.
  • Управляйте портами с помощью -p, скоростью — с помощью -T, а обход проверяйте с помощью -f/-D.

Далее: определение служб и операционной системы.

Часто задаваемые вопросы

Урок «Методы сканирования портов» бесплатный?

Да — полный текст урока «Методы сканирования портов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ethical Hacking Academy, подпишись на CoddyKit PRO. Курс Ethical Hacking Academy содержит 4 уроков всего.

Чему я научусь в уроке «Методы сканирования портов»?

SYN, connect и UDP Ты практикуешь Ethical Hacking Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Ethical Hacking Academy?

Предыдущий опыт не требуется. Ethical Hacking Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Методы сканирования портов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Ethical Hacking Academy?

Да. Каждый урок Ethical Hacking Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Обнаружение узлов
  2. Методы сканирования портов
  3. Определение служб и OS
  4. Механизм скриптов Nmap
← Назад к Ethical Hacking Academy