Nmap

Nmap

https://t.me/cyberdometj

Nmap (Network Mapper) - это бесплатный инструмент с открытым исходным кодом, используемый для исследования, управления и аудита безопасности компьютерных сетей. Он может использоваться для обнаружения хостов и сервисов в сети, создания карты сети и выявления потенциальных уязвимостей безопасности.

Nmap использует различные техники сканирования, включая сканирование ping, сканирование портов и обнаружение версий, чтобы собрать информацию о хостах сети и их сервисах. Он поддерживает множество различных протоколов, включая TCP, UDP и ICMP, и может сканировать как IPv4-, так и IPv6-сети.

Некоторые из ключевых функций Nmap включают:

  • Обнаружение и идентификацию хостов
  • Сканирование портов и обнаружение сервисов
  • Обнаружение операционной системы
  • Взаимодействие со скриптами на целевых системах с использованием Nmap Scripting Engine (NSE)
  • Обнаружение и идентификацию удаленной операционной системы
  • Создание карты сети и обнаружение топологии
  • Техники обхода брандмауэра
  • Сканирование и эксплуатацию уязвимостей

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

Обнаружение и идентификация хоста

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

Базовое сканирование:

nmap <target>

Запустить сканирование ping (подсети):

nmap -sn <target>

Например: nmap -sn 192.168.1.0/24

Сканировать список целей:

nmap -iL [targets.txt]

Ping-скан с трассировкой маршрута:

nmap -sn --traceroute acme.org example.org

TCP SYN ping:

nmap -PS <target>

UDP ping:

nmap -PU <target>

Сканирование IPv6-цели:

nmap -6 <target>

Указать NSE-скрипт:

nmap -sn --script dns-brute example.org

Ручное назначение DNS-серверов:

nmap --dns-servers <servers> <target>

Обнаружение ARP:

nmap -PR <target>

Например: nmap -PR 192.168.1.0/24

Обнаружение UDP на указанном порту:

nmap -PU53 <target>

Отключить DNS-разрешение:

nmap -n <target>

Выбрать сетевой интерфейс:

nmap -e <interface> <target>

Пропустить обнаружение хоста:

nmap -Pn <target>

Определение версий

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

Определение сервисов:

nmap -sV <target>

Например: nmap -sV scanme.nmap.org

Определение операционной системы:

nmap -O <target>

Попытка угадывания операционной системы:

nmap -O --osscan-guess <target>

Увеличение точности определения версий:

nmap -sV --version-intensity <0-9> <target>

Устранение неполадок определения версий:

nmap -sV --version-trace <target>

Режим агрессивного определения:

nmap -A <target>

Режим подробного вывода:

nmap -O -v <target>

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

Комбинируя некоторые из вышеупомянутых опций и техник, мы можем получить более полное представление о хостах, которые могут быть защищены механизмами защиты, такими как брандмауэры или системы предотвращения вторжений. Администраторы систем могут также использовать этот тип возможностей для понимания того, как и где применять необходимые правила фильтрации или стандарты защиты. Кроме того, подделка определенных сетевых условий, таких как IP-адрес или MAC-адрес источника через Nmap, может быть полезна для обнаружения несанкционированного использования системных ресурсов и некоторых атак на доступность.

Сканирование TCP SYN ping:

nmap -sn -PS <target> или nmap -sS

Сканирование нескольких портов:

nmap -sn -PS80,100-1000 <target>

Сканирование TCP ACK ping:

nmap -sn -PA <target> или nmap -sA

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

nmap -sn -PU <target>

Сканирование ICMP ping:

nmap -sn -PE <target>

Сканирование SCTP INIT ping:

nmap -sn -PY <target> или nmap -sY

Сканирование IP-протокола ping (трассировка):

nmap -sn -PO --packet-trace <target>

Сканирование случайного количества хостов:

nmap -iR [число]

Сканирование широковещательного:

ping nmap --script broadcast-ping --packet-trace

Xmas-сканирование (устанавливает флаги FIN, PSH и URG):

nmap -sX <target>

Сканирование UDP (с подробным выводом):

nmap -sU -v <target>

Сканирование брандмауэра (разделить заголовок TCP на маленькие фрагменты):

nmap -f <target>

Скрыть сканирование с помощью ложных объектов:

nmap -D <decoy1>[<decoy2>] <target>

Например: nmap -D 192.168.1.101,192.168.1.102 <target>

Подделать исходный IP-адрес:

nmap -S <IP-адрес> <target>

Подделать MAC-адрес:

nmap --spoof-mac [MAD_ADDRESS] <target>

Сканирование с использованием случайного MAC-адреса:

nmap -v -sT -PN --spoof-mac 0 <target>

Время и производительность

Производительность - важнейший аспект функциональности Nmap. Оптимизация сканирования с помощью настройки конфигураций и параметров времени может значительно улучшить как производительность, так и точность результатов при возможных проблемах сетевой задержки, медленных ответов хостов и/или аналогичных вероятных сценариях.

Ограничение скорости:

nmap --scan-delay <time>

Настройка задержки между запросами:

nmap --scan-delay <time>; --max-scan-delay <time>

Шаблон Paranoid – максимальная осторожность:

nmap -T0 <target>

Шаблон Sneaky – обход идентификации (также -T0):

nmap -T1 <target>

Шаблон Polite – медленное сканирование:

nmap -T2 <target>

Шаблон Normal – скорость по умолчанию:

nmap -T3 <target>

Шаблон Aggressive – рекомендуемый режим:

nmap -T4 -n -Pn -p- <target>

Шаблон Insane – очень быстрые сети:

nmap -T5 <target>

Тайм-аут хостов – отказ от хостов:

nmap -sV -A -p- --host-timeout 5m <target>

Nmap Scripting Engine (NSE)

Введенная во время Google Summer of Code 2007 платформа скриптов, известная как NSE, расширила возможности и точность Nmap значительно за пределами обнаружения сервисов и хостов. На самом деле, четырнадцать определенных категорий (на момент написания этого текста) подчеркивают важную роль, которую играло сообщество Nmap в создании такого безпрецедентного количества гибкости при сканировании. Среди них есть такие категории, как auth, discovery, exploit или fuzzer, а также гибкие и легко усваиваемые аргументы командной строки.

Безопасная котегория - Стандарт :

nmap -sC <host>

Например: nmap -sC scanme.nmap.org

Выполнить (несколько) скриптов по имени:

nmap --script default,safe

Выбрать скрипт по категории:

nmap --script exploit <target>

Выполнить файл скрипта NSE:

nmap --script /path/to/script.nse <target>

Исключить конкретную категорию:

nmap -sV --script "not exploit" <target>

Включить две разные категории:

nmap --script "broadcast and discovery" <target>

Комбинирование шаблонов:

nmap --script "http-*” <target>

Установить аргументы:

nmap -sV --script http-title --script-args http.useragent="Mozilla 1337" <target>

Загрузить аргументы из файла:

nmap --script "discovery" --script-args-file nmap-args.txt <target>

Сканирование веб-серверов

Можно считать, что, несмотря на появление криптографических наборов, таких как SSL/TLS, для обеспечения безопасности коммуникаций в Интернете, значительная часть видимого Интернета остается криптографически слабой. Таким образом, не является неразумным предположить, что конечные точки только для HTTP могут потенциально стать кладезью информации, даже если уровень экспозиции не является непосредственным. В этом отношении Nmap занимает уникальную позицию, чтобы помочь автоматизировать проверку конфигурации, которая ищет уязвимые веб-приложения или даже собирает учетные данные по умолчанию. Вот некоторые из наиболее распространенных рецептов:

Список поддерживаемых HTTP-методов:

nmap -p80,443 --script http-methods --script-args httpmethods.test-all=true <target>

Поиск интересных путей / каталогов:

nmap --script http-enum -sV <target>

Брутфорс HTTP basic auth:

nmap -p80 --script http-brute <target>

Собственный список пользователей / паролей:

nmap -sV --script http-brute --script-args userdb=/usernames.txt,passdb=/passwords.txt <target>

Брутфорс распространенных веб-платформ (например, WordPress):

nmap -sV --script http-wordpress-brute <target>

Обнаружение веб-брандмауэра:

nmap -sV --script http-waf-detect,http-waf-fingerprint<target>

Обнаружение уязвимостей XST (через метод HTTP TRACE):

nmap -sV --script http-methods,http-trace --script-argshttp-methods.retest <target>

Обнаружение уязвимостей XSS:

nmap -sV --script http-unsafe-output-escaping <target>

Обнаружение уязвимостей SQL-инъекций:

nmap -sV --script http-sql-injection <target>

Поиск учетных данных по умолчанию:

nmap -sV --script http-default-accounts <target>

Поиск открытых репозиториев Git:

nmap -sV --script http-git <target>

Системы ICS/SCADA

Промышленная система управления (ICS) - это общий термин, используемый для описания конгломерата компонентов управления, которые руководят аппаратной и программной частями крупных инфраструктурных секторов, таких как электроэнергетика или другие дискретные производственные отрасли (например, автомобильная). Управление в инфраструктуре ICS может быть полностью автоматизированным или может включать человека в процесс (NIST) - это также включает в себя внедрение дополнительных возможностей IT для дополнения стареющих аналоговых устройств и аналогичных механических альтернатив.

ICS-системы чрезвычайно уязвимы и несут огромный риск, поэтому всегда рекомендуется использовать опции, такие как -sT (полная проверка соединения TCP), чтобы ограничить интенсивность сканирования. Если вы управляете или защищаете сеть ICS, ниже приведены команды, которые могут оказаться полезными.

Обнаружение открытых портов

nmap -Pn -sT --scan-delay 1s --max-parallelism 1 - p80,102,443,502,1089,1091,2222,4000,4840,20000,34962,34964,34980,44818,47808,55000,55003 <target>

Порты системы управления (BACnet/IP):

nmap -Pn -sU -p47808 --script bacnet-info <target>

Ethernet/IP:

nmap -Pn -sU -p44818 --script enip-info <target>

Обнаружение устройства Modbus:

nmap -Pn -sT -p502 --script modbus-discover <target>

Обнаружение устройства Niagara Fox:

nmap -Pn -sT -p1911,4911 --script fox-info <target>

Обнаружение устройства PCWorx:

nmap -Pn -sT -p1962 --script pcworx-info <target>

Существует несколько способов защиты сервера от Nmap сканирования:

  1. Правила брандмауэра: Настройте правила брандмауэра для блокировки входящего трафика от неизвестных или неавторизованных IP-адресов. Это предотвратит сканирование nmap от достижения вашего сервера в первую очередь.
  2. Port knocking: Реализуйте систему port knocking, которая требует последовательности попыток подключения к определенным портам, прежде чем разрешить доступ к серверу. Это может сделать более трудным для сканирования nmap идентификацию открытых портов на вашем сервере.
  3. Фильтрация IP-адресов: Используйте фильтрацию IP-адресов для ограничения доступа к вашему серверу только для доверенных IP-адресов. Это может помочь предотвратить сканирование nmap и другой вредоносный трафик от достижения вашего сервера.
  4. Скрытие открытых портов: Настройте свой сервер для скрытия открытых портов, используя такие техники, как port knocking или перенаправление портов. Это может сделать более трудным для сканирования nmap идентификацию открытых портов на вашем сервере.
  5. IDS / IPS: Реализуйте систему обнаружения или предотвращения вторжений (IDS / IPS), которая может обнаруживать и блокировать сканирование nmap и другой вредоносный трафик в режиме реального времени. Это может помочь защитить ваш сервер от несанкционированного доступа и других угроз безопасности.
CyberDome

Report Page