6 video | 5 week
Summary
TLDRВ данном скрипте обсуждаются различные типы сканирования портов с помощью утилиты nmap, наиболее распространенные ошибки и важные параметры для эффективного сканирования. Рассматриваются методы быстрого и точного анализа TCP и UDP портов, включая полуоткрытое сканирование, использование специфических опций для выбора диапазонов портов, а также комбинированное сканирование TCP и UDP. Также затрагиваются способы оптимизации массового сканирования большого количества хостов, уменьшения времени отклика, и необходимость балансировки между скоростью сканирования и стабильностью целевой системы, чтобы избежать отказов в обслуживании.
Takeaways
- ⚙️ Nmap по умолчанию сканирует только топ 1000 наиболее используемых портов, а не все порты до 1024.
- 📁 Файл nmap-services используется для определения популярных портов на основе анализа данных.
- 🔍 Для сканирования всех портов можно использовать диапазон от 0 до 65535, с помощью опции `-p`.
- 🎯 Возможность комбинированного сканирования TCP и UDP портов с помощью опций `-T` для TCP и `-U` для UDP.
- 🔗 Полуоткрытое сканирование TCP (SYN сканирование) является наиболее распространённым и эффективным методом.
- ⏱️ TCP Connect (полное трёхстороннее рукопожатие) сканирование медленнее и чаще записывается в логах системы.
- 🔒 Полуоткрытое сканирование более скрытно, но может быть обнаружено системами предотвращения вторжений (IDS, IPS).
- 📡 UDP-сканирование использует специфичные пакеты для популярных сервисов, таких как DNS, NTP, SNMP.
- 🏗️ Для ускорения сканирования можно ограничить область сканирования по машинам или портам.
- 🚀 Массовое сканирование можно ускорить с помощью инструментов, таких как Masscan, Zmap, но это требует высокой пропускной способности.
Q & A
Какая самая распространённая ошибка при сканировании портов с помощью nmap?
-Часто пользователи полагают, что при запуске nmap проверяются все порты, хотя на самом деле по умолчанию проверяется только топ 1000 наиболее часто используемых портов, как указано в файле nmap-services.
Как указать nmap сканировать все порты на целевой машине?
-Чтобы сканировать все порты, можно использовать опцию '-p-', что эквивалентно диапазону от 0 до 65535.
Какие параметры nmap позволяют сканировать конкретные порты?
-Можно использовать параметр '-p', указывая конкретные порты через запятую или диапазоны портов.
Какой флаг использовать для быстрого сканирования в nmap?
-Для быстрого сканирования можно использовать опцию '-F', которая проверяет топ 100 наиболее популярных портов.
Как скомбинировать сканирование TCP и UDP портов в одном запуске nmap?
-Для комбинированного сканирования TCP и UDP портов используются флаги '-sT' для TCP и '-sU' для UDP, указывая порты через двоеточие после соответствующих флагов.
Чем отличается полуоткрытое сканирование (SYN scan) от стандартного TCP-сканирования?
-Полуоткрытое сканирование SYN (-sS) не завершает трёхстороннее рукопожатие TCP, что снижает вероятность обнаружения, в отличие от стандартного TCP-сканирования (-sT), которое завершает соединение и может быть зафиксировано в логах.
Почему полуоткрытое сканирование SYN более популярно для пентестеров?
-SYN-сканирование экономит ресурсы, так как не завершает соединение, и менее вероятно, что оно будет зарегистрировано на целевых системах, что делает его популярным среди пентестеров.
Какие инструменты и параметры можно использовать для ускорения массового сканирования?
-Для ускорения массового сканирования можно использовать такие инструменты, как Masscan, Zmap, а также уменьшить время ожидания для неотвечающих портов и увеличить пропускную способность сети.
Почему важно быть осторожным при ускоренном сканировании больших сетей?
-Использование слишком высокой пропускной способности и настроек сканирования может случайно вызвать отказ в обслуживании (DoS) для тестируемой сети.
Какие UDP службы наиболее часто сканируются с помощью nmap?
-Наиболее популярные UDP службы, такие как DNS (порт 53), RPC (порт 111), NTP (порт 123), NetBIOS (порт 137), SNMP (порт 161), чаще всего проверяются с использованием nmap, с применением заранее подготовленных пакетов.
Outlines
🔍 Ошибки при сканировании портов с помощью nmap
В первом абзаце рассматриваются распространённые ошибки при сканировании портов с помощью nmap. Основная ошибка заключается в том, что пользователи часто полагают, что все порты будут проверены, но по умолчанию nmap сканирует только 1000 самых часто используемых портов, основываясь на файле nmap Services. Обсуждаются параметры, позволяющие сканировать все порты, включая опции для указания диапазонов портов и комбинированного сканирования TCP и UDP. Приводится описание параметров Open и P, а также опции F для быстрого сканирования топ 100 портов.
🛡️ Полуоткрытое сканирование и его особенности
Во втором абзаце описывается метод полуоткрытого сканирования (SYN сканирование) и его отличия от стандартного трёхстороннего рукопожатия. Полуоткрытое сканирование не завершает установку соединения, что экономит ресурсы и делает сканирование менее заметным для целевой системы. Обсуждаются потенциальные способы обнаружения данного сканирования через системы обнаружения вторжений (IDS) и предотвращения вторжений (IPS). Для успешного проведения полуоткрытого сканирования требуется права суперпользователя (root). Также описываются случаи, когда полуоткрытое сканирование оказывается менее эффективным.
🚀 Ускорение массового сканирования
Третий абзац посвящен проблемам и решениям при массовом сканировании большого количества хостов и портов. Обсуждаются сложности, связанные с продолжительностью сканирования при больших объёмах данных, и приводится пример расчёта времени для сканирования 2000 хостов по всем портам. Предлагаются различные способы ускорения процесса, такие как выборка портов и хостов, использование нескольких сканирующих машин, настройка времени ожидания для неответных портов и использование специализированных инструментов (например, masscan и ZMap). Подчеркивается важность избегания перегрузки сетей и вызова отказа в обслуживании (DoS) при массовом сканировании.
Mindmap
Keywords
💡Сканирование портов
💡Nmap
💡Трёхстороннее рукопожатие (TCP handshake)
💡SYN-сканирование
💡UDP-сканирование
💡Файлы nmap-services и nmap-payloads
💡Полуоткрытое сканирование
💡IDS/IPS системы
💡Опции Nmap
💡Массовое сканирование
Highlights
Самая распространённая ошибка при сканировании портов - запуск проверки всех портов, указывая тип сканирования и целевой адрес.
По умолчанию nmap проверяет только топ 1000 наиболее широко используемых портов, как это определено в файле nmap Services.
Nmap предлагает различные параметры, такие как параметр Open для показа только открытых портов и параметр для указания диапазона портов от 0 до 65535.
Можно комбинировать сканирование TCP и UDP портов, используя опции T: и U: соответственно.
Тип сканирования TCP портов Connect (SC) завершает трёхстороннее рукопожатие TCP с каждым целевым портом.
Полуоткрытое сканирование (SYN сканирование) не завершает трёхстороннее рукопожатие, что экономит ресурсы и менее вероятно зарегистрируется в логах.
UDP сканирование nmap отправляет UDP пакет без нагрузки на целевую машину для большинства портов.
Для популярных UDP сервисов nmap разработан с payloads, специфичными для каждого протокола.
Сканирование всех портов на 2000 хостах может занять почти 8 лет при скорости 1 порт в секунду.
Для ускорения сканирования можно использовать несколько сканирующих машин и уменьшить время ожидания для неответных портов.
Использование инструментов masan, Z Map и suan может улучшить скорость сканирования, но требует большой пропускной способности.
Системы IDS и IPS могут зарегистрировать или блокировать пакеты, связанные со сканированием типа SYN.
UDP пакеты данных отправляются только на те порты, которые связаны с общими UDP службами.
Если популярная UDP служба использует нестандартный порт, сканирование может её не обнаружить.
Тестировщики должны тщательно измерять системы цели, чтобы убедиться, что их сервисы по-прежнему доступны и не вызван отказ в обслуживании.
Transcripts
[музыка]
Какие опции есть Давайте в начале
поговорим про то что распределённая
именно самая распространённая ошибка при
сканировании портов с помощью это просто
запуск указывая тип сканирования и
целевой адрес полагая что проверит все
порты но мы знаем
что запуская
обыч
узваре портов фактически nmap даже не
проверит все порты ниже 1024 А по
умолчанию вместо этого nmap проверяет
только топ тысячи наиболее широко
используемых портов как это определено в
файле nmap Services этот файл создан на
основе исследований включающий
широкомасштабные именно сканирование
чтобы определить наиболее популярные
порты в интернете этот рейтинг
популярности портов а он
основан
на Большой на большом количестве данных
и
статистике Окей если запускается с
параметром какие у нас параметры есть
параметр Open показывает только открытые
порты
опция мы указываем порт который мы хотим
сканировать если мы хотим сканировать
все порты мы можем указать опцию указать
порт от ноля до
65535 а Либо мы можем просто указать
опцию ноль
а дефис либо можем указать опцию P дефис
это то же самое то же самое чтобы
попросить nmap просканировать все порты
опция пи и указывать
а разные порты через запятую тоже
позволяет нам именно позволяет nmap
сканировать только эти порты вы заметьте
что вы можете указывать диапазон портов
также то
есть не по отдельности а диапазон опция
tops это сканировать наиболее
допустим наиболее
распространённых портов популярных
портов и указывая опцию F Вы
можете сделать сканирование топ 100
быстрых топ 100 портов и это
сканирование называется быстрое
сканирование забыл сказать то что вы
можете делать комбинирование
комбинированное сканирование а
именно чтобы проверить только
определённый списк портов Вы можете
вызвать nmap
с как я уже говорил с портами и указываю
их запятыми Но если вы хотите сделать
комбинированное сканирование tcp А и udp
вместе то вы указываете опцию T А да
большая T двоеточия и указываете порты
которые вы хотите просканировать именно
в tcp Также вы Ука Уте большую бук
большую U двоеточие указываете порты udp
соответственно в одном сканировании Вы
можете комбинировать сканировать Как tcp
так и udp порты
а Итак nmap предлагает можно типа
сканирования tcp портов большинство из
которых основано на анализе поведения
целевых машин с различными
установленными битами как мы уже
обсуждали самым простым типом
сканирования tcp портов Map является
Connect SC всё что мы ранее обсуждали по
про пакеты это называется полуоткрытое
сканирование самым простым типом
сканирования это называется conn этот
вариант вызывается с помощью флага ST Да
s маленькая S и большая it
пытается он пытается завершить
трёхстороннее рукопожатие tcp с каждым
целевым портом если соединение
устанавливается порт отмечается как
открытый и соединение разрывается
пакетом ресет от машины проводящий тест
устанавливается соединение трёхстороннее
рукопожатия после того как трёх
стороннего рукопожатие было установлено
а инициатор он отправляет RST пакет для
того чтобы разорвать это сторонний
сканирование сканирование типа Connect
она медленнее так как а они то есть
должны дождаться завершения
трехстороннее рукопожатие tcp для всех
открытых портов Кроме того
а данное сканирование с большой
вероятностью будет зарегистрировано в
логах если конечно система
зарегистрирует завершённые соединения
соединение будет записано для каждого
открытого порта Да в отличие от
сканирования типа си полуоткрытого
сканирования сканирование типа си то
есть полуоткрытое сканирование она также
известна как полуоткрытое то есть мы или
си да то есть и также это отображено в
опции через SS маленькая с большая S а
она не завершает трёхстороннее
рукопожатие помните мы обсуждали разные
варианты событий сканирования ttp и как
раз-таки вот
Син sts сканирование Син сканирования
она не завершает трёхстороннее
рукопожатия вместо этого оно начинает
отправки си и открытые порты
определяются на основе ответа Сина
поскольку nmap обходит ядра ядро системы
а неожиданный ответ Сина отправляется
ядром которое затем отправляется ресет
то есть а которое Да затем отправляет
ресет пакет что экономит ресурсы nmap
вот Самый распространённый метод
сканирования - это полуоткрытое
сканирование
А
[музыка]
И если говорить про то что так как
соединение никогда не
происходит целевая система менее
вероятно зарегистрирует этот вид
активности да я говорю про си соединени
и любые приложения на цели которые
регистрируют соединение не увидет этой
активности Однако фй волы системы
обнаружения вторжений ids и IPS системы
предотвращения вторжения также они могут
зарегистрировать предупреждать или даже
блокировать пакет связанный со
сканированием типа си так
как данное поведения она не полностью
следует нормальному поведению tcp с
трёхсторонний рукопожатием этот вид
сканирования требует пра желательно Root
пра
чтобы
мог формировать именно свои пакеты
связанные со
сканированием
Окей хорошо поговорим про коротко
поговорим про nmap как использует
используется в udp сканировании Он
поддерживает данные сканирование для не
так много вариантов которы
вызва иксом suq То есть это единственный
один вариант
который мы можем вызвать при
сканировании используя используя nmap
nmap отправляет udp пакет без нагрузки
на целевую машину для большинства портов
лишь для немногих конкретных udp портов
Да
а связанные которые с наиболее
распространёнными и популярными udp
сервисами типа
А ДНС сервиса На пятьдесят третьем UTP
порту 111 rpc Bind 123 ntp сервисе 137
netbios 161 snmp сервисы и так далее а
то для таких сервисов nmap разработан он
разработал лоды которые находятся в
файле nma payloads и они отправляют при
сканировании отправляется специфичный
для данного протокола пакет А
разработанный
и таким образом мы можем получить более
надёжное сканирование портов udp для
этих служб Вот и Обратите внимание что
Эти пакеты данных отправляются только на
те порты которые связаны с общими udp
службами если кто-то изменил стандартную
UTP службу допустим указывает не
пятьдесят третий порт для ДНС а какой-то
там другой шестьдесят третий то к
сожалению если слушает на необычном
порту эта техника не найдёт её то есть
лоды не будут работать поэтому как бы
вероятность конечно нету вероятность что
такие порты не будут изменены со
стандартных но есть Ну возможность есть
тем не менее по крайней крайне редко
можно именно
такие производственные среды найти где
стандартные службы слушающие на
необычном порту существуют вот
Следовательно для идентификации этих
распространённых более там дюжины udp
служб сервисов а функции udp пакетов
vmap она очень
полезна
Хорошо теперь поговорим про то что А как
себя вести если у нас очень много хостов
и портов и нужно будет сделать Масси
массовое сканирование Да иногда от
пентестеров
требуется именно
проведение массового сканирования в
больших средах и расширенный объём может
означать огромное практическое то есть
огромное даже практически Невозможное
количество работы потому что Как Мы уже
рассчитывали ранее сканирование может
занять очень долгое время рассмотрим
пример предположим что у вас 2.000
хостов включая все порты и мы знаем что
портов как gcp для udp и udp а их
65.536 включая ноль а если брать один
порт в секунду То это 265 а 262 млн
секунд То есть это почти 8 лет Даже если
мы за раз будем сканировать 100 портов
то это занимает 30 дней то круглосуточно
а а если этих портов А если хостов не
2.000 а 10.000 или там 100.000 а то это
как бы задача звёздочка
рассмотрим какие-то из способов
которые решают данную проблему Первое -
это ограничение области сканирование
попытаться ограничить выбрать отобрать
определённые машины Да которые не
сканируют всё подряд а выбрать те
определённые машины единственный
недостаток - Это насколько ва ваша
выборка она будет
соответствовать она будет хороша есть
сово Уно
гово вашей
компании Также можно сделать выборку не
только машин но и портов указать
определённые или самые популярные порты
которые бы вы хотели просканировать на
допустим деся портах на
де десятых целевых
машин Ну недостаток понятен Что
пропускаете остальные порты да А вдруг
есть и сервисы которые крутятся на
нестандартных портах это тоже очень
важно можно
использовать ускорение то есть ускорить
процесс
сканирования То есть
это допустим атакующий может
использовать методы сверх быстрого
сканирования да для быстрой проверки
именно больших портов в целевой среде
во-первых атакующий может использовать
большое количество сканирующих машин то
есть один из методов преодолении этой
проблемы вместо одной машинки 10 Ну или
больше можно использовать попытаться
[музыка]
попробовать настроить машину так чтобы
уменьшить Время ожидания да для не
отзывчивых портов которые Ну то есть
вообще не этот не
отвечают То есть можно
[музыка]
настроить Ну для того чтобы Да вот
сетевую
часть при
отправке получении пакетов можно ть
максимально близко установить
сканирующие машины к целевым системам
А с более пропускной большой более
большой большей пропускной способностью
и это также может улучшить скорость
сканирования Ну и конечно может быть
можно использовать инструменты э которые
указаны это masan Z Map suan и так далее
и данные инструменты
а они кстати все эти варианты
потребуют все эти механизмы они
потребуют много пропускной способности
Поэтому нужно быть осторожным чтобы
случайно не вызвать отказ в обслуживании
то есть доса атаку тестируемой сети
тестируемой среде
а при использовании этих подходов
тестировщики допустим пентестера они
должны тщательно измерять системы цели
чтобы убедить что
их сервисы по-прежнему доступны То есть
все эти сервисы доступны и не упали
5.0 / 5 (0 votes)