Nmap сканировать порты: Nmap — руководство для начинающих / Хабр
Содержание
Примеры |
Здесь приведены несколько примеров использования Nmap, от самых простых до более изощренных. Некоторые
реально существующие IP адреса и доменные имена использованны для того, чтобы сделать примеры более конкретными.
На их место вы должны подставить адреса/имена из вашей собственной сети.. В то время как
сканирование портов некоторой сети не является незаконным, некоторым администраторам сетей может не понравиться
своевольное сканирование их сетей и они могут пожаловаться. Для начала постарайтесь получить разрешение.
В целях тестирования у вас есть разрешение сканировать scanme.nmap.org
.
Вы можете использовать сканирование с помощью Nmap, но не тестировать эксплоиты или производить атаки отказа в
обслуживании. Для того чтобы не перегружать канал, пожалуйста, не производите более дюжины сканирований этого
хоста в день. В случае злоупотребления этим свободным для сканирования хостом, он будет отключен и Nmap выдаст
Failed to resolve given hostname/IP:
(не могу разрешить данное имя/IP: scanme.nmap.org). Все выше сказанное также
scanme. nmap.org
относится и к хостам scanme2.nmap.org
,
scanme3.nmap.org
, и так далее, несмотря на то, что эти хосты еще не
существуют.
nmap -v scanme.nmap.org
Этой командой будут просканированы все TCP порты машины
scanme.nmap.org
. Опция -v
активирует вербальный режим.
nmap -sS -O scanme.nmap.org/24
Этой командой будет произведено скрытное SYN сканирование всех 255 машин сети «класса C», в
которой расположена машина Scanme. Также будет произведена попытка определения операционной системы на каждом
работающем хосте. Из-за SYN сканирования и опции определения ОС данная команда требует привилегий
суперпользователя (root).
nmap -sV -p 22,53,110,143,4564
198.116.0-255.1-127
Запускает перебор хостов и TCP сканирование первой половины всех (из доступных 255) 8 битных подсетей
адресного пространства 198. 116 класса B. Также проверяет запущены ли SSH, DNS, POP3 или IMAP с использованием их
стандартных портов, а также использует ли какое-нибудь приложение порт 4564. Если какой-нибудь из этих портов
открыт, то будет произведена попытка определения работающего с этим портом приложения.
nmap -v -iR 100000 -PN -p 80
Указывает Nmap выбрать случайным образом 100,000 хостов и просканировать их на наличие запущенных на них
веб-серверов (порт 80). Перебор хостов отключен опцией -PN
, т.к. посылка пары предварительных
запросов с целью определения доступности хоста является нецелесообразной, когда вас интересует всего один порт на
каждом хосте.
nmap -PN -p80 -oX logs/pb-port80scan.xml -oG
logs/pb-port80scan.gnmap 216.163.128.20/20
Этой командой будут просканированы 4096 IP адресов (без предварительного пингования), а выходные данные
будут сохранены в фомате XML и формате, удобном для просмотра утилитой grep (grepable формат).
Nmap — руководство для начинающих / Хабр
Многие слышали и пользовались замечательной утилитой nmap. Ее любят и системные администраторы, и взломщики. Даже Голливуд знает про нее — в фильме «Матрица» при взломе используется nmap.
nmap — это аббревиатура от «Network Mapper», на русский язык наиболее корректно можно перевести как «сетевой картограф». Возможно, это не лучший вариант перевода на русский язык, но он довольно точно отображает суть — инструмент для исследования сети и проверки безопасности. Утилита кроссплатформенна, бесплатна, поддерживаются операционных системы Linux, Windows, FreeBSD, OpenBSD, Solaris, Mac OS X.
Рассмотрим использование утилиты в Debian. В стандартной поставке дистрибутива nmap отсутствует, установим его командой
# aptitude install nmap
Nmap умеет сканировать различными методами — например, UDP, TCP connect(), TCP SYN (полуоткрытое), FTP proxy (прорыв через ftp), Reverse-ident, ICMP (ping), FIN, ACK, SYN и NULL-сканирование. Выбор варианта сканирования зависит от указанных ключей, вызов nmap выглядит следующим образом:
nmap <ключи> цель
Для опытов возьмем специальный хост для экспериментов, созданный самими разработчиками nmap — scanme.nmap.org. Выполним от root’а
Ключи сканирования задавать необязательно — в этом случае nmap проверит хост на наличие открытых портов и служб, которые слушают эти порты.
Запустим командой:
# nmap scanme.nmap.org
Через несколько секунд получим результат:Interesting ports on scanme.nmap.org (74.207.244.221):
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
Ничего необычного, ssh на стандартном порту и http на 80. Nmap распознаёт следующие состояния портов: open, filtered, closed, или unfiltered. Open означает, что приложение на целевой машине готово для принятия пакетов на этот порт. Filtered означает, что брандмауэр, фильтр, или что-то другое в сети блокирует порт, так что Nmap не может определить, является ли порт открытым или закрытым. Closed — не связанны в данный момент ни с каким приложением, но могут быть открыты в любой момент. Unfiltered порты отвечают на запросы Nmap, но нельзя определить, являются ли они открытыми или закрытыми.
# nmap -O scanme.nmap.org
Хинт: Если во время сканирования нажать пробел — можно увидеть текущий прогресс сканирования и на сколько процентов он выполнен. Через несколько секунд получаем ответ, в котором пока что интересна строчка Device type:
Device type: general purpose|WAP|webcam|storage-misc
Running (JUST GUESSING) : Linux 2.6.X|2.4.X (93%), AXIS Linux 2.6.X (89%), Linksys Linux 2.4.X (89%)
Aggressive OS guesses: Linux 2.6.17 - 2.6.28 (93%), Linux 2.6.9 - 2.6.27 (93%), Linux 2.6.24 (Fedora 8) (92%), Linux 2.6.18 (Slackware 11.0) (92%), Linux 2.6.19 - 2.6.26 (92%), OpenWrt (Linux 2. 4.32) (91%), Linux 2.6.22 (91%), Linux 2.6.22 (Fedora Core 6) (90%), Linux 2.6.13 - 2.6.27 (90%), Linux 2.6.9 - 2.6.18 (90%)
No exact OS matches for host (test conditions non-ideal).
Вообще, точную версию ядра средствами nmap определить невозможно, но примерную дату «свежести» и саму операционную систему определить можно. Можно просканировать сразу несколько хостов, для этого надо их перечислить через пробел:
# nmap -O example.com example2.com
Вернемся к нашему подопытному хосту. Хочется узнать поподробнее, какой используется софт. Попробуем уточнить полученные данные с помощью ключей -sV:
# nmap -sV example.com example2.com
Получим ответ:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3p1 Debian 3ubuntu7 (protocol 2.0)
80/tcp open http Apache httpd 2.2.14 ((Ubuntu))
Service Info: OS: Linux
Прогресс налицо — мы узнали точные названия используемых служб и даже их версии, а заодно узнали точно, какая операционная система стоит на сервере. С расшифровкой никаких проблем не возникает, все вполне понятно.
Агрессивное сканирование можно провести, указав ключ -A
# nmap -A scanme.nmap.org
Nmap выведет очень много информации, я не стану приводить пример. Сканирование может длится довольно долго, занимая несколько минут.
В локальных сетях или просто имея на руках диапазон ip адресов, удобно проверить их на занятость с помощью ключей -sP:
# nmap -sP 192.168.1.0/24
Сканирование проходит довольно быстро, так как по сути это обычный ping-тест, отвечает ли хост на ping. Следует учесть, что хост может не отвечать на ping из-за настроек фаерволла. Если нужный участок сети нельзя ограничить маской, можно указать диапазон адресов, с какого и по какой надо провести сканирование. Например, есть диапазон адресов с 192.168.1.2 до 192.168.1.5. Тогда выполним:
# nmap -sP 192.168.1.2-5
Ответ будет выглядеть так:
Host 192.168.1.2 is up (0.0023s latency)
Host 192. 168.1.3 is up (0.0015s latency)
Host 192.168.1.4 is up (0.0018s latency)
Host 192.168.1.5 is up (0.0026s latency)
В моем случае все ip в данный момент были в сети.
Это далеко не все возможности nmap, но уместить их в рамках одной статьи несколько сложновато.
Если вам ближе GUI — есть замечательная утилита Zenmap — графическая оболочка для nmap, умеющая заодно и строить предполагаемую карту сети.
Хочу предупредить, что сканирование портов на удаленных машинах может нарушать закон.
UDPInflame уточнил, что сканирование портов все-таки не является противозаконным.
Проверка открытых портов с помощью Nmap
Небольшой практический совет. Время от времени рекомендую сканировать свои внешние ip адреса какими-нибудь сканерами портов, например, nmap. Можно это делать на регулярной основе с помощью скриптов и отправлять отчет себе на почту. Если не делать таких проверок, то рано или поздно что-то забудете заблокировать.
Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Курс стоящий, все подробности читайте по ссылке. Есть бесплатные курсы.
Пример, как это бывает обычно у меня. Поднимается временно какой-то сервис для теста в отдельной виртуальной машине. Для простоты к нему просто пробрасывается определенный порт. После теста виртуальная машина удаляется, а проброс порта остается. Через некоторое время на этот же ip адрес может приехать что-то другое. Например, у меня приехал новый сервер и на этот ip был посажен idrac. Каково же было мое удивление, когда я, сканируя внешний ip, увидел доступ к консоли управления сервером. Сначала перепугался, думал кто-то что-то сломал. Полез разбираться, оказалось, что старый проброс 443 порта остался на этом внешнем ip.
Вот еще один пример. Стоял тестовый гипервизор HyperV, подключенный в том числе к WAN порту. Подключили на всякий случай, вдруг пригодится. В момент установки и настройки внешний ip ему никто не настраивал, так как он был не нужен. Может интерфейс отключили или что-то еще сделали. Не суть важно. В какой-то момент конфигурировали виртуальные свитчи, в том числе на этом интерфейсе. Он стал активен и автоматом получил настройки внешнего ip по dhcp. Заметил случайно. Сколько HyperV провисел всеми своими портами, в том числе и rdp в интернете — не известно.
Самый простой пример, как можно автоматизировать сканирование внешних ip адресов. Поставьте nmap на какой-то внешний по отношению к тестируемым серверам сервер. И с него по крону раз в неделю запускайте проверку с отправкой результата вам на почту:
nmap -T4 -A -v 111.222.333.444 | mail -s "Nmap Scan 111.222.333.444" [email protected]
Если почта через консоль не отправляется, почитайте у меня, как это исправить — отправка почты через консоль linux.
Получите подробный отчет по всем типовым портам, которые открыты на вашем ip адресе.
Ниже в отчете будет информация о работающих сервисах. Имеет смысл просматривать и их.
Если у вас небольшая инфраструктура, достаточно раз в неделю просматривать отчеты, чтобы убедиться, что все в порядке. Иначе надо как-то автоматизировать эти проверки. В принципе, ничего сложного нет. Можно с помощью того же Zabbix следить за разрешенным списком открытых портов. Но я не прорабатывал этот вопрос, так как нет надобности. Думаю, что по этой теме уже есть готовые наработки.
Онлайн курс «DevOps практики и инструменты»
Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.
Проверьте себя на вступительном тесте и смотрите программу детальнее по .
20 Потрясающих Примеров Команды Nmap
Ниже вы найдете 20 базовых примеров использования команды Nmap.
Вы узнаете, как использовать Nmap из командной строки в Linux для поиска активных хостов в сети и сканирования открытых портов.
Вы увидите, как удаленно определить операционную систему с помощью отпечатков стека TCP/IP и как узнать версию программного обеспечения запущенного на удаленном сервере.
Я так-же покажу как с помощью Nmap осуществить скрытое сканирование, как определить фаервол и как подменить MAC адрес.
Дельный Совет: Хотите сохранить анонимность? Узнайте как использовать ПРОКСИ из командной строки в Linux. Читать далее →
1. Сканирование Одного Хоста или IP Адреса
Сканировать Отдельный IP Адрес:
$ nmap 192. 168.1.1
Сканировать сервер по Имени Хоста:
$ nmap server.shellhacks.com
Увеличить Уровень Детализации результатов сканирования:
$ nmap -v server.shellhacks.com $ nmap -vv server.shellhacks.com
2. Сканирование Множества IP Адресов
Сканировать Множество IP Адресов:
$ nmap 192.168.1.1 192.168.1.2 192.168.1.3 $ namp 192.168.1.1,2,3
Сканировать Подсеть:
$ nmap 192.168.1.0/24 $ nmap 192.168.1.*
Сканировать Диапазон IP Адресов (192.168.1.0 — 192.168.1.200):
$ nmap 192.168.1.0-200
3. Поиск Активных Компьютеров в Сети
Дельный Совет: Сканируйте сеть с помощью одной лишь команды ping
! Вычислите все активные компьютеры! Читать далее →
Сканировать сеть в поиске Активных Хостов:
$ nmap -sn 192.168.1.0/24
4. Сканирование Списка Хостов из Файла
Сканирование списка хостов/сетей из Файла:
$ nmap -iL input. txt
Формат файла:
# Записи могут быть представлены в любом из форматов, с которыми работает # Nmap из командной строки (IP адреса, имена хостов, CIDR, IPv6, или октетные # диапазоны). Записи должны разделятся одним или более пробелами, табуляциями # или переходами на новую строку. $ cat input.txt server.shellhacks.com 192.168.1.0/24 192.168.2.1,2,3 192.168.3.0-200
5. Исключение IP/Хостов/Сетей из Сканирования
Исключить Цели из сканирования Nmap-ом:
$ nmap 192.168.1.0/24 --exclude 192.168.1.1 $ nmap 192.168.1.0/24 --exclude 192.168.1.1 192.168.1.5 $ nmap 192.168.1.0/24 --exclude 192.168.1.1,2,3
Исключить Список хостов, взятых из файла:
$ nmap 192.168.1.0/24 --excludefile exclude.txt
Формат файла с исключенными хостами аналогичен приведенному выше.
6. Сканирование Определенных Портов
Сканировать Один Порт:
$ nmap -p 80 192. 168.1.1
Сканировать Несколько Портов:
$ nmap -p 80,443 192.168.1.1
Сканировать Диапазон Портов:
$ nmap -p 80-1000 192.168.1.1
Сканировать Все Порты:
$ nmap -p "*" 192.168.1.1
Сканировать несколько самых Распространенных Портов:
$ nmap --top-ports 5 192.168.1.1 $ nmap --top-ports 10 192.168.1.1
7. Определение Поддерживаемых IP Протоколов
Определить какие IP Протоколы (TCP, UDP, ICMP, и т.д.) поддерживает сканируемый хост:
$ nmap -sO 192.168.1.1
8. Сканирование TCP/UDP Портов
Сканировать все TCP Порты:
$ nmap -sT 192.168.1.1
Сканировать определенные TCP Порты:
$ nmap -p T:80 192.168.1.1
Сканировать все UDP Порты:
$ nmap -sU 192.168.1.1
Сканировать определенные UDP Порты:
$ nmap -p U:53 192. 168.1.1
Объединение сканирования разных портов:
$ nmap -p U:53,79,113,T:21-25,80,443,8080 192.168.1.1
9. Быстрое Сканирование
Активировать Быстрый Режим сканирования:
$ nmap -F 192.168.1.1
* Сканирует меньшее кол-во портов, чем при обыкновенном сканировании.
10. Показывать Причину Состояния Порта
Показать Причину, по которой Nmap считает что порт находится в определенном состоянии:
$ nmap --reason 192.168.1.1
11. Показывать Только Открытые Порты
Показать Только Открытые Порты (либо возможно открытые):
$ nmap --open 192.168.1.1
12. Определение ОС
Одна из наиболее известных функциональных возможностей Nmap — это удаленное определение ОС на основе анализа работы стека TCP/IP.
Nmap посылает серию TCP и UDP пакетов на удаленный хост и изучает ответы.
После проведения множества тестов, Nmap сравнивает результаты со своей базой данных и, при нахождении соответствий, выводит информацию об ОС.
Включить Определение ОС:
$ nmap -O 192.168.1.1
13. Определение Версии Сервисов
Включить Определение Версии Сервисов:
$ nmap -sV 192.168.1.1
* Определяет версии программ, запущенных на удаленном сервере.
14. Обнаружение Фаервола
Узнать, защищен ли компьютер какими-либо Пакетными Фильтрами или Фаерволом:
$ nmap -sA 192.168.1.1
15. Подмена MAC Адреса
Подменить MAC Адреса:
$ nmap --spoof-mac 00:11:22:33:44:55 192.168.1.1
Подменить MAC Адрес Случайным MAC-ом:
$ nmap --spoof-mac 0 192.168.1.1
16. Сканирование Фаервола на Уязвимости
Эти три типа сканирования используют незаметную лазейку в TCP RFC, чтобы разделять порты на открытые и закрытые.
Когда сканируется система отвечающая требованиям RFC, любой пакет, не содержащий установленного бита SYN, RST или ACK, повлечет за собой отправку RST в ответ в случае, если порт закрыт, или не повлечет никакого ответа, если порт открыт.
Т.к. ни один из этих битов не установлен, то любая комбинация трех оставшихся (FIN, PSH и URG) будет являться правильной.
TCP Null сканирование:
$ nmap -sN 192.168.1.1
* Не устанавливаются никакие биты (Флагов в TCP заголовоке 0).
TCP Fin сканирование:
$ nmap -sF 192.168.1.1
* Устанавливается только TCP FIN бит.
TCP Xmas сканирование:
$ nmap -sX 192.168.1.1
* Устанавливаются FIN, PSH и URG флаги (пакет светится как новогодняя елка).
17. Скрытое Сканирование
Дельный Совет: Сохраняйте анонимность во время сканирования портов! Используйте Nmap
+ Tor
+ ProxyChains
! Безопасное и простое тестирование на проникновение! Читать далее →
TCP SYN сканирование:
$ nmap -sS 192.168.0.1
* Известное как сканированием с использованием полуоткрытых соединений, так как не отрывает полных TCP соединений.
18. Отключение Обнаружения Хостов (No Ping)
Не пинговать хосты перед сканированием:
$ nmap -Pn 192.168.1.1
19. Отключение Использования DNS
Дельный Совет: Необходимо усилить безопасность в Linux? Шифруйте DNS трафик для защиты от спуфинга! Читать далее →
Никогда не производить обратное преобразование DNS имен для каждого обнаруженного активного IP адреса:
$ nmap -n 192.168.1.1
20. Сохранение Результатов Сканирования Nmap в Файл
Сохранить результат сканирования Nmap в Текстовый Файл:
$ nmap 192.168.1.1 > output.txt $ nmap -oN output.txt 192.168.1.1
Сохранить результат сканирования Nmap в XML Файл:
$ nmap -oX output.xml 192.168.1.1
nmap сканирование портов, как пользоваться утилитой
Основное предназначение nmap сканирование портов. Утилита позволяет снаружи определить какие службы запущены на сервере и какие порты используются.
nmap часто применяют специалисты по информационной безопасности. Чужие сервера сканировать таким образом нужно с осторожностью. Попытки сканирования могут быть расценены как вредоносная активность.
nmap позволяет сканировать порты на любой удаленной машине, указывается IP адрес. Также можно запускать сканирование сервера в локальной сети или собственного компьютера.
nmap 127.0.0.1
Starting Nmap 7.60 ( https://nmap.org ) at 2019-08-27 08:13 +05
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00022s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
631/tcp open ipp
5432/tcp open postgresql
8000/tcp open http-alt
9050/tcp open tor-socks
Nmap done: 1 IP address (1 host up) scanned in 0.31 seconds
Открытые порты и запущенные на них сервисы утилита покажет даже без использования дополнительных ключей.
Добавив -sn можно отключить сканирование и просто проверить в сети ли хост.
nmap -sn 127.0.0.1
Starting Nmap 7.60 ( https://nmap.org ) at 2019-08-27 08:17 +05
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00032s latency).
Nmap done: 1 IP address (1 host up) scanned in 0.00 seconds
Максимально подробную информацию о портах и службах можно получить так (для TCP)
sudo nmap -sS -sV -sC -sV —version-all -O —osscan-guess -T4 —reason —open -p- -n -v 127.0.0.1
password for admin:
Starting Nmap 7.60 ( https://nmap.org ) at 2019-08-27 08:19 +05
NSE: Loaded 146 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 08:19
Completed NSE at 08:19, 0.00s elapsed
Initiating NSE at 08:19
Completed NSE at 08:19, 0.00s elapsed
Initiating SYN Stealth Scan at 08:19
Scanning 127. 0.0.1 [65535 ports]
Discovered open port 80/tcp on 127.0.0.1
Discovered open port 25/tcp on 127.0.0.1
Completed SYN Stealth Scan at 08:19, 8.16s elapsed (65535 total ports)
Initiating Service scan at 08:19
Scanning 6 services on 127.0.0.1
Или
sudo nmap -sS -T2 —top-ports 1000 -Pn -v 127.0.0.1
-sS
— TCP SYN, также может быть -sT
для всех TCP сеодинений, -sU
— UDP
Для UDP
sudo nmap -sU —top-ports 1000 -Pn -v 127.0.0.1
sudo nmap -sU —top-ports 100 -Pn -v 127.0.0.1
Во всех случаях можно указывать один IP адрес или диапазон адресов.
Среди самых полезных флагов -p. Он задает нужные порты, можно, например просканировать с 1 по 1000. -p 1-100.
Для nmap сканирование портов является основным преднозначением, также утилита может выполнять более агрессивные действия — в частности подбирать пароли FTP/SSH.
Этого для чужих серверов лучше не делать без договора на аудит безопасности с их владельцем.
На своем сервере попытки сканирования можно запретить при помощи iptables. В том числе ICMP трафик.
Nmap — открытые порты и сканирование портов
Nmap — это очень популярный сканер сети с открытым исходным кодом. Nmap — свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети (портов и соответствующих им служб).
Что такое анализ локальной сети
Комплекс мер по изучению параметров соединения между компьютерами в домашней или корпоративной сети называется анализом локальной сети (АЛС). Процесс включает в себя:
- измерение скорости сети;
- просмотр IP-адресов подключённых устройств;
- анализ трафика сети — процесс, который позволяет выявить конфликтную машину или неисправность паутины в определённом узле.
Эта процедура может обнаружить вредоносное программное обеспечение и изолировать его распространение на всю сеть. Поэтому АЛС стоит проводить даже в профилактических целях.
Что такое сканер портов?
Сканер портов относится к программному приложению, которое сканирует сервер на наличие открытых портов. Он позволяет аудиторам и сетевым администраторам проверять сетевую безопасность, в то время как злоумышленники и хакеры используют ее для определения открытых портов для использования или запуска вредоносных служб на компьютере или сервере.
Сканирование портов представляет собой способ определения, какие порты в сети открыты. Поскольку порты на компьютере — это место, где информация отправляется и принимается, сканирование портов аналогично стуку в дверь, чтобы увидеть, находится ли кто-то дома. Выполнение сканирования портов в локальной сети или на сервере позволяет определить, какие порты открыты и находятся в режиме прослушивания (listening) (получения информации), а также выявить наличие таких устройств безопасности, как межсетевые экраны, которые находятся между отправителем и целью. Этот метод известен как дактилоскопия (fingerprinting). Это также полезно для тестирования сетевой безопасности и надежности брандмауэра системы. Благодаря этой функциональности, это также популярный инструмент разведки для злоумышленников, ищущих слабую точку доступа для проникновения в компьютер или сервер.
Порты различаются по своим назначениям. Они пронумерованы от 0 до 65535, но определенные диапазоны используются чаще. Порты с 0 по 1023 идентифицируются (https://ru.wikipedia.org/wiki/Список_портов_TCP_и_UDP), как «общеизвестные порты» или стандартные порты и были назначены для определенных служб, агентством по присвоению номеров в Интернете (IANA). Некоторые из наиболее известных портов и назначенных им служб включают в себя:
- Порт 20 (UDP) — протокол передачи файлов (FTP) для передачи данных
- Порт 22 (tcp) — протокол Secure Shell (SSH) для безопасного входа, FTP и переадресации портов
- Порт 23 (tcp) — протокол Telnet для не зашифрованных текстовых коммутаций
- Порт 53 (UDP) — Система доменных имен (DNS) переводит имена всех компьютеров в Интернете в IP-адреса
- Порт 80 (tcp) — Всемирная паутина HTTP
Как провести сканирование скорости
Первый параметр, который стоит просмотреть на предмет ошибок, — это скорость передачи данных. Если при обмене пакетами информации в ЛС происходят сбои, замедления потери команд, то налицо нарушение протоколов или конфликт адресов. В таких случаях стоит начинать искать неполадку. Просмотреть информацию о скорости передачи данных можно через «Командную строку» или стороннее ПО.
С помощью «Командной строки»
Терминал «Командной строки» — уникальный инструмент для управления компьютером и вывода необходимой информации пользователю. Консоль также может помочь с АЛС, в частности вывести отчёт о скорости доступа в ЛС:
- Чтобы запустить «Командную строку», открываем меню «Пуск», переходим в папку «Служебные» и кликаем по иконке «Командная строка».
- В терминале прописываем первую команду ipconfig /all. Внимательно смотрим на выведенную информацию и находим строку «Основной шлюз», где будет указан сетевой адрес роутера. Это значение нам понадобится для дальнейших действий.
Прописываем команду ipconfig /all и находим основной шлюз компьютера
- Запускаем команду Ping, указывая адрес шлюза (в данном случае команда имеет вид Ping 192.168.137.1), и ожидаем несколько секунд, пока произойдёт обмен пакетов с маршрутизатором. Результат будет опубликован почти мгновенно, сразу же после обработки данных.
Через команду Ping основного шлюза узнаём скорость обмена данных с роутером
Если максимальное значение будет больше 1500 мсек даже в беспроводной сети, имеет смысл провести анализ трафика, а также проверить каждый компьютер на наличие вредоносного ПО антивирусными программами.
С помощью сторонних программ
Не только с помощью «Командной строки» можно узнать скорость внутри ЛС. Существуют дополнительные инструменты в виде сторонних программ. По интернету их гуляет огромное количество и большинство схожи между собой как по интерфейсу, так и по выводимым данным. Одной из таких утилит является LAN Speed Test. Утилита на должном уровне справляется с анализом скорости, имеет простой и понятный интерфейс.
- Скачиваем, устанавливаем и запускаем программу.
- На главной странице приложения нажимаем кнопку Start Test.
В интерфейсе программы LAN Speed Test нажимаем кнопку Start Test
- В течение пары секунд получаем исчерпывающую информацию о возможностях передачи данных в ЛС.
Данные о скорости в сети выводятся в виде таблицы
Также для анализа можно использовать другие утилиты, к примеру, Iperf или LAN Bench.
Первая весьма полезная для домашней и небольшой корпоративной сети. Приложение можно установить на все машины и следить за пингом. Оно весьма полезно, так как может производить мониторинг и вести записи продолжительное время.
Iperf — это программа для слежки за пингом и выявления небольших неполадок в ЛС
LAN Bench — это минималистическая утилита, похожая на LAN Speed Test. Ею очень легко мониторить скорость и пинг в сети, достаточно открыть интерфейс и нажать кнопку Test. Ниже сразу начнут появляться результаты.
LAN Bench — это простейшая утилита для оценки скорости ЛС
Как посмотреть список IP-адресов, подключённых к ЛС
Иногда возникает необходимость узнать информацию о подключённых к сети устройствах. В основном это касается беспроводных маршрутизаторов, к которым можно подключиться незаметно и «воровать» трафик. Посмотреть список устройств можно сторонними ПО и штатными средствами (веб-админкой маршрутизатора).
С первым всё довольно просто: существует простейшая утилита под названием Wireless Network Watcher. Она, как IP-сканер локальной сети, прекрасно справляется с анализом адресатов сети и выводит на экран всю доступную информацию о них.
Через программу Wireless Network Watcher можно увидеть список всех подключённых к сети устройств
Однако у программы есть два минуса:
- для её работы необходимо проводное подключение к роутеру;
- инструментарий программы ограничивается только выводом информации. Если нарушитель будет обнаружен, она ничего не сможет с ним сделать. То же касается и аналогичных программ. Заблокировать доступ к сети можно только внутри веб-админки роутера.
Для просмотра информации о подключённых устройствах через веб-админку маршрутизатора необходимо сначала её открыть:
- На тыльной стороне устройства знакомимся с реквизитами для входа.
На тыльной стороне роутера знакомимся с реквизитами для входа
- Вводим данные в браузере и авторизуемся в сервисе управления.
Через браузер открываем панель управления маршрутизатором
- В свойствах админки находим вкладку «Беспроводной режим», а в ней пункт «Статистика беспроводного режима».
Находим пункт «Статистика беспроводного режима» и знакомимся со всеми подключёнными устройствами
- Проверяем IP-адресы всех известных устройств, остальные же можно «Запретить». Только не стоит забывать о подключённых телевизорах, телефонах и планшетах, они также имеют собственный индикатор в этой вкладке настроек.
Как сканировать LAN, узнать IP и MAC-адреса.
Порядок действий по сканированию адресов и получению другой информации:
- Первым делом рекомендуется первоначальная настройка установленного ПО, сделать это можно в соответствующем пункте меню.
- Во вкладке «Производительность» выбрать наиболее подходящую для себя (и своего ПК) скорость сканирования. Не рекомендуется выбирать максимальную скорость на офисных ПК или ноутбуках, в таком случае прога может работать нестабильно. При наличии редких и специфичных девайсов (различных сетевых касс, специфичного оборудования для бизнеса или откровенно китайских и никем не поддерживаемых девайсов) рекомендуется поставить галочку «Высокая точность сканирования». При использовании стандартных устройств её можно не ставить.
- Теперь можно переходить к непосредственному поиску гаджетов, указав необходимый диапазон IP-адресов (по умолчанию у большинства коммутаторов или роутеров используется диапазон от 192.168.0.1 до 192.168.0.254), и нажать кнопку «Сканировать». В некоторых случаях диапазон адресов может быть изначально изменён вручную, поэтому вводить нужно будет именно его (сканирование стандартных ip практически ничего не даст).
- В нашем случае было определено три устройства: ПК, на котором запущен сканер, беспроводной роутер и смартфон, подключенный по Wi-Fi. По каждому из гаджетов присутствует полная информация, такая как текущий ip-адрес (при желании его можно поменять), производитель техники и MAC адрес.
Методы сканирования портов
Сканирование портов отправляет тщательно подготовленный пакет на каждый номер порта назначения. Основные методы, которые может использовать программное обеспечение для сканирования портов:
- Ваниль (Vanilla) — самый простой скан; попытка подключиться ко всем 65 536 портам по по очереди. Ванильное сканирование — это полное сканирование соединения, то есть оно отправляет флаг SYN (запрос на подключение) и после получения ответа SYN-ACK (подтверждение подключения) отправляет обратно флаг ACK. Этот обмен SYN, SYN-ACK, ACK включает квитирование TCP. Полное сканирование подключений является точным, но очень легко обнаруживается, поскольку все подключения всегда регистрируются брандмауэрами.
- Сканирование SYN (SYN Scan) — также называется полуоткрытым сканированием, оно только отправляет SYN и ожидает ответа SYN-ACK от цели. Если ответ получен, сканер никогда не отвечает. Так как соединение TCP не было установлено, система не регистрирует взаимодействие, но отправитель узнал, открыт порт или нет.
- Сканирование XMAS и FIN (XMAS and FIN Scans) — набор сканирований, используемых для сбора информации без регистрации в целевой системе. При сканировании FIN незапрошенный флаг FIN (обычно используемый для завершения установленного сеанса) будет отправлен на порт. Ответ системы на этот случайный флаг может показать состояние порта или брандмауэр. Например, закрытый порт, который получает незапрошенный пакет FIN, ответит пакетом RST (мгновенный прерывание), но открытый порт проигнорирует его. Сканирование XMAS просто отправляет набор всех флагов, создавая бессмысленное взаимодействие. Ответ системы может быть интерпретирован для лучшего понимания портов системы и брандмауэра.
- Сканирование отказов FTP (FTP Bounce Scan) — позволяет замаскировать местоположение отправителя путем пересылки пакета через FTP-сервер. Это также предназначено для отправителя, чтобы остаться незамеченным.
- Сканирование развертки (Sweep scan) — пингует один и тот же порт на нескольких компьютерах, чтобы определить, какие компьютеры в сети активны. Это не раскрывает информацию о состоянии порта, а сообщает отправителю, какие системы в сети активны. Таким образом, его можно использовать как предварительное сканирование.
Описание NMap
Nmap – бесплатная программа для защиты сетей. Она поддерживает работу с разными протоколами безопасности и сканирует любые порты. Утилита использует различные методы проверки. Это позволяет находить уязвимости сетей и устранять их.
Nmap – одна из лучших программ в своем роде. Она поддерживает работу с TCP, ICMP, UDP, FTP proxy, SYN и другими протоколами. В программе нет ограничений на проверку сетей по размерам или сложности. После проверки можно сравнить результаты анализа и задействовать фильтр хостов.
Работа осуществляется как через командную строку, так и через графическую оболочку с пользовательским интерфейсом. Поэтому использовать Nmap могут как новички, так и профессионалы. Софт совместим с версиями Windows от XP до 10.
Преимущества и недостатки
- Обходит многие фаерволы
- Позволяет проверять доступность серверов
- Работа в анонимном режиме
- Запрещена в некоторых странах
Как работает Nmap?
В компьютерных сетях все подключенные устройства имеют свой ip адрес. Каждый компьютер поддерживает протокол ping, с помощью которого можно определить подключен ли он к сети. Мы просто отправляем ping запрос компьютеру, и если он отзывается, то считаем, что он подключен. Nmap использует немного иной подход. Компьютеры также определенным образом реагируют на те или иные сетевые пакеты, утилита просто отправляет нужные пакеты и смотрит какие хосты прислали ответ.
Но об этом вы, наверное, уже знаете. Более интересно то как Nmap узнает какие сервисы запущены на машине. Суть работы всех сетевых программ основана на портах. Чтобы получить сообщение из сети, программа должна открыть порт на вашем компьютере и ждать входящих соединений. А для отправки сообщения по сети нужно подключиться к уже другой программой (адресатом) порту. Затем программе необходимо будет открыть порт, на котором она будет ждать ответа.
Утилита nmap в процессе сканирования сети перебирает доступный диапазон портов и пытается подключиться к каждому из них. Если подключение удалось, в большинстве случаев, передав несколько пакетов программа может даже узнать версию программного обеспечения, которые ожидает подключений к этому порту. Теперь, после того, как мы рассмотрели основы, рассмотрим как пользоваться nmap для сканирования портов и сети.
Сканирование сети с помощью nmap – немного теории
nmap – свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети.
nmap была написана с помощью C, C++, Python, Lua и предустановлена в Kali Linux, который мы с вами уже обозревали.
Изначально утилита была разработана для систем UNIX, сейчас же не составляет проблем установить её и на Windows.
nmap используется злоумышленниками для сканирования сетей WiFi, LAN и обнаружения открытых портов на подключенных устройствах для проведения различных атак.
Если на подключенном устройстве открыты порты, то оно считается уязвимым и легко поддаётся атакам с помощью различных X-sploits. Одним из самых распространнёных является Metasploit.
Metasploit Project – проект, посвящённый информационной безопасности. Создан для предоставления информации об уязвимостях, помощи в создании сигнатур для IDS, создания и тестирования эксплойтов.
Также вы можете прочитать о скрипте для Termux, с помощью него можно легко установить Network Mapper на ваш смартфон.
Зачем нужна команда nmap?
Основная задача команды nmap – сканирование сетевых портов указанных компьютеров для определения, какие из них используются (прослушиваются) программами-серверами. Для подавляющего числа сетевых демонов (служб) определены их стандартные порты по-умолчаню, которые они используют для своей работы. По этому признаку можно делать выводы, о том какие серверные программы запущены на том или ином компьютере в сети.
Также команда nmap – это самый доступный инструмент в руках злоумышленников для организации подготовки хакерской атаки на сеть. Ведь с помощью этой команды очень легко получить информацию, на основе которой можно судить о слабых и уязвимых местах в атакуемой системе.
Возможности nmap и примеры сканирования
Синтаксис Network Mapper
nmap [Тип сканирования] [Параметры] {Целевая спецификация}
В качестве целевой спецификации может быть имя хоста, IP-адрес, сеть и т.п.
Список параметров можно получить написав в терминале команду nmap.
Как вы знаете, роутеры сами раздают IP-адреса в диапазоне 192.168.0(1).0 – 192.168.0(1).255, это функция DHCP.
Для сканирования всего радиуса нам необходимо написать команду:
nmap -sL 192.168.1.1/24
-sL – параметр, запускает сканирование списка
24 в IP-адресе – это 24-битная подсетка, которая имеет нужный нам радиус в 256 символов. То есть сканирование пройдёт от 10.0.0.0 – 10.0.0.255.
Для сканирования подключенных устройств мы использует параметр -sn, в таком случае -sL нам не требуется.
nmap -sn 192.168.1.1/24
Как вы можете увидеть, в моей сети из было просканировано 256 хостов и 3 из них используются. Важно, что 192.168.0.1 – это роутер. Далее идёт мой телефон и ПК.
Теперь давайте просканируем устройства на наличие открытых портов следующей командой:
nmap -Pn {цель}
Мой компьютер не имеет открытых портов, что хорошо для меня и плохо для злоумышленника, так как он не сможет провести атаку.
Однако просканировав роутер, мы видим, что 2 порта открыто, 80 и 1900.
Также можно просканировать и все 256 хостов, однако это займет намного больше времени.
Узнаем версию ОС нашего ПК и роутера. Сканирование на операционную систему требует root привелегий и наличия открытых портов. В случае если порты закрыты, конкретного результата не будет и об этом будет предупреждение. С роутером проблем не возникло и все вывелось корректно, также мы видим MAC-адрес роутера/
#1: Сканирование одного хоста или IP адреса (IPv4)
### Сканирование одного IP nmap 192.168.1.1 ## Сканирование хоста nmap randomsite.com ## Сканирование хоста с дополнительной информацией nmap -v randomsite.com
#2: Сканирование нескольких IP-адресов или подсети(IPv4)
nmap 192.168.1.1 192.168.1.2 192.168.1.3 nmap 192.168.1.1,2,3
Вы также можете сканировать диапазон IP-адресов:
nmap 192.168.1.1-20 nmap 192.168.1.*
Наконец, вы можете сканировать всю подсеть:
nmap 192.168.1.0/24
#3: Чтение списка хостов/сетей из файла (IPv4)
Опция -iL позволяет вам читать список целевых систем, используя текстовый файл. Это полезно для сканирования большого количества хостов / сетей. Создайте текстовый файл следующим образом:
cat > /tmp/test.txt
Заполните его:
randomsite.com 192.168.1.0/24 192.168.1.1/24 10.1.2.3 localhost
Запустите сканирование:
nmap -iL /tmp/test.txt
#4: Исключение хостов/сетей (IPv4)
При сканировании большого количества хостов/сетей вы можете исключить хосты из проверки:
nmap 192.168.1.0/24 —exclude 192.168.1.5 nmap 192.168.1.0/24 —exclude 192.168.1.5,192.168.1.254
Или исключить список с помощью файла /tmp/exclude.txt
nmap -iL /tmp/scanlist.txt —excludefile /tmp/exclude.txt
#5: Включить скрипт сканирования ОС и ее версии (IPv4)
nmap -A 192.168.1.254 nmap -v -A 192.168.1.1 nmap -A -iL /tmp/scanlist.txt
#6: Узнать, защищен ли хост брандмауэром
nmap -sA 192.168.1.254
nmap -sA randomsite.com
#7: Сканирование хоста, если он защищен брандмауэром
nmap -PN 192.168.1.1
nmap -PN randomsite.com
#8: Сканирование хоста/адреса IPv6
Опция -6 включает сканирование IPv6. Синтаксис:
nmap -6 IPv6-Address-Here
nmap -6 randomsite.com
nmap -6 2607:f0d0:1002:51::4
nmap -v A -6 2607:f0d0:1002:51::4
#9: Сканирование сети и поиск работающих устройств
nmap -sP 192.168.1.0/24
Пример вывода:
Host 192.168.1.1 is up (0.00035s latency).
MAC Address: BC:AE:C5:C3:16:93 (Unknown)
Host 192.168.1.2 is up (0.0038s latency).
MAC Address: 74:44:01:40:57:FB (Unknown)
Host 192.168.1.5 is up.
Host nas03 (192.168.1.12) is up (0.0091s latency).
MAC Address: 00:11:32:11:15:FC (Synology Incorporated)
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.80 second
#10: Быстрое сканирование
nmap -F 192.168.1.1
#11: Показать причину, по которой порт находится в определенном состоянии
nmap —reason 192.168.1.1
nmap —reason randomsite.com
#12: Показывать только открытые (или возможно открытые) порты
nmap —open 192.168.1.1
nmap —open randomsite.com
#13: Показать все отправленные и полученные пакеты
nmap —packet-trace 192.168.1.1
nmap —packet-trace randomsite.com
#14: Показать интерфейсы и маршруты хоста
nmap —iflist
Пример вывода:
Starting Nmap 5.00 ( http://nmap.org ) at 2012-11-27 02:01 IST
************************INTERFACES************************
DEV (SHORT) IP/MASK TYPE UP MAC
lo (lo) 127.0.0.1/8 loopback up
eth0 (eth0) 192.168.1.5/24 ethernet up B8:AC:6F:65:31:E5
vmnet1 (vmnet1) 192.168.121.1/24 ethernet up 00:50:56:C0:00:01
vmnet8 (vmnet8) 192.168.179.1/24 ethernet up 00:50:56:C0:00:08
ppp0 (ppp0) 10.1.19.69/32 point2point up
**************************ROUTES**************************
DST/MASK DEV GATEWAY
10.0.31.178/32 ppp0
209.133.67.35/32 eth0 192.168.1.2
192.168.1.0/0 eth0
192.168.121.0/0 vmnet1
192.168.179.0/0 vmnet8
169.254.0.0/0 eth0
10.0.0.0/0 ppp0
0.0.0.0/0 eth0 192.168.1.2
#15: Сканирование определенных портов
nmap -p [port] hostName ## Сканирование 80 порта nmap -p 80 192.168.1.1 ## TCP сканирование 80 порта nmap -p T:80 192.168.1.1 ## UDP сканирование 80 порта nmap -p U:53 192.168.1.1 ## Сканирование двух портов nmap -p 80,443 192.168.1.1 ## Сканирование диапазона портов nmap -p 80-200 192.168.1.1 ## Комбинирование всех параметров nmap -p U:53,111,137,T:21-25,80,139,8080 192.168.1.1 nmap -p U:53,111,137,T:21-25,80,139,8080 randomsite.com nmap -v -sU -sT -p U:53,111,137,T:21-25,80,139,8080 192.168.1.254 ## Сканирование всех портов с помощью * nmap -p «*» 192.168.1.1 ## Сканирование популярных портов, нужно указать количество nmap —top-ports 5 192.168.1.1 nmap —top-ports 10 192.168.1.1
Пример вывода:
Starting Nmap 5.00 ( http://nmap.org ) at 2012-11-27 01:23 IST Interesting ports on 192.168.1.1: PORT STATE SERVICE 21/tcp closed ftp 22/tcp open ssh 23/tcp closed telnet 25/tcp closed smtp 80/tcp open http 110/tcp closed pop3 139/tcp closed netbios-ssn 443/tcp closed https 445/tcp closed microsoft-ds 3389/tcp closed ms-term-serv MAC Address: BC:AE:C5:C3:16:93 (Unknown) Nmap done: 1 IP address (1 host up) scanned in 0.51 seconds
#16: Самый быстрый способ проверить все ваши устройства на наличие открытых портов
nmap -T5 192.168.1.0/24
#17: Определение ОС
Вы можете идентифицировать приложения и ОС удаленного хоста, используя опцию -O:
nmap -O 192.168.1.1
nmap -O —osscan-guess 192.168.1.1
nmap -v -O —osscan-guess 192.168.1.1
Пример вывода:
Starting Nmap 5.00 ( http://nmap.org ) at 2012-11-27 01:29 IST
NSE: Loaded 0 scripts for scanning.
Initiating ARP Ping Scan at 01:29
Scanning 192.168.1.1 [1 port]
Completed ARP Ping Scan at 01:29, 0.01s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 01:29
Completed Parallel DNS resolution of 1 host. at 01:29, 0.22s elapsed
Initiating SYN Stealth Scan at 01:29
Scanning 192.168.1.1 [1000 ports]
Discovered open port 80/tcp on 192.168.1.1
Discovered open port 22/tcp on 192.168.1.1
Completed SYN Stealth Scan at 01:29, 0.16s elapsed (1000 total ports)
Initiating OS detection (try #1) against 192.168.1.1
Retrying OS detection (try #2) against 192.168.1.1
Retrying OS detection (try #3) against 192.168.1.1
Retrying OS detection (try #4) against 192.168.1.1
Retrying OS detection (try #5) against 192.168.1.1
Host 192.168.1.1 is up (0.00049s latency).
Interesting ports on 192.168.1.1:
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
MAC Address: BC:AE:C5:C3:16:93 (Unknown)
Device type: WAP|general purpose|router|printer|broadband router
Running (JUST GUESSING) : Linksys Linux 2.4.X (95%), Linux 2.4.X|2.6.X (94%), MikroTik RouterOS 3.X (92%), Lexmark embedded (90%), Enterasys embedded (89%), D-Link Linux 2.4.X (89%), Netgear Linux 2.4.X (89%)
Aggressive OS guesses: OpenWrt White Russian 0.9 (Linux 2.4.30) (95%), OpenWrt 0.9 — 7.09 (Linux 2.4.30 — 2.4.34) (94%), OpenWrt Kamikaze 7.09 (Linux 2.6.22) (94%), Linux 2.4.21 — 2.4.31 (likely embedded) (92%), Linux 2.6.15 — 2.6.23 (embedded) (92%), Linux 2.6.15 — 2.6.24 (92%), MikroTik RouterOS 3.0beta5 (92%), MikroTik RouterOS 3.17 (92%), Linux 2.6.24 (91%), Linux 2.6.22 (90%)
No exact OS matches for host (If you know what OS is running on it, see http://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=5.00%D=11/27%OT=22%CT=1%CU=30609%PV=Y%DS=1%G=Y%M=BCAEC5%TM=50B3CA
OS:4B%P=x86_64-unknown-linux-gnu)SEQ(SP=C8%GCD=1%ISR=CB%TI=Z%CI=Z%II=I%TS=7
OS:)OPS(O1=M2300ST11NW2%O2=M2300ST11NW2%O3=M2300NNT11NW2%O4=M2300ST11NW2%O5
OS:=M2300ST11NW2%O6=M2300ST11)WIN(W1=45E8%W2=45E8%W3=45E8%W4=45E8%W5=45E8%W
OS_6=45E8)ECN(R=Y%DF=Y%T=40%W=4600%O=M2300NNSNW2%CC=N%Q=)T1(R=Y%DF=Y%T=40%S
OS:=O%A=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%R
OS_D=0%Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=
OS:0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(R=N)U1(R=Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID
OS:=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=40%CD=S)
Uptime guess: 12.990 days (since Wed Nov 14 01:44:40 2012)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=200 (Good luck!)
IP ID Sequence Generation: All zeros
Read data files from: /usr/share/nmap
OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 12.38 seconds
Raw packets sent: 1126 (53.832KB) | Rcvd: 1066 (46.100KB)
#18: Как определить версии служб?
nmap -sV 192.168.1.1
Пример вывода:
Starting Nmap 5.00 ( http://nmap.org ) at 2012-11-27 01:34 IST Interesting ports on 192.168.1.1: Not shown: 998 closed ports PORT STATE SERVICE VERSION 22/tcp open ssh Dropbear sshd 0.52 (protocol 2.0) 80/tcp open http? 1 service unrecognized despite returning data.
Синтаксис команды nmap и особенности её работы
Команда nmap довольно проста в использовании и каким-то сложным синтаксисом не отличается:
nmap [Тип сканирования…] [Опции] {цель сканирования}
Чего нельзя сказать о количестве, функциональности её ключей и неисчерпаемых возможностях их применения. Официальная документация, доступная на страницах man-руководства (команда man nmap), кроме того, что очень подробная (трудно встретить ещё подробнее), так ещё и имеет качественный перевод (локализации, в том числе и на русском языке) в большинстве Linux-дистрибутивов.
Не всегда утилита nmap предустановлена в системе, поэтому для её использования требуется установка соответствующего пакета, который обычно имеет имя nmap:
$ sudo apt-get install nmap
Или в Centos/Redhat
$ yum install nmap -y
Пример:
$ nmap -sT localhost
Столбец STATE показывает состояние порта: он может быть открыт (open), когда связан с использующими его службами (соединениями), закрыт (closed), когда порт не используется ни одним сервером. Также доступны состояния: unfiltered, когда nmap не смогла определить состояние порта. А также filtered – когда порт защищён (или заблокирован) брандмауэром.
Для задания хоста можно также использовать цифровую запись в виде IP-адреса. Отчёт из данного примера сформирован для самого обычного компьютера, для которого не была сконфигурирована какая-то защита. Как можно видеть, для прослушивания 80 и 443 портов для работы протоколов HTTP и HTTPS соответственно, запущен веб-сервер. Сервер баз данных (БД) MySQL также работает по стандартному порту.
Примеры команды nmap
Для поиска устройств, подключенных к сети, пользователю необходимо узнать маску локальной сети. Эта информация будет доступна после ввода команды:
$ ip addr show
В открывшемся окне, напротив слова «inet» запомните число, указанное, после слеша. Например, 24. Это число понадобится вам в дальнейшем. Теперь нужно задать команду для сканирования сети с указанием сохраненного числа и IP маршрутизатора:
$ nmap -sL 192.168.1.1/24
Если в операционной системе Linux стоит защита от сканирования портов, процесс не даст никаких результатов. В этом случае пользователю придется пойти на небольшую хитрость – использовать специальную опцию для обхода этой защиты. Как это будет выглядеть на практике:
$ nmap -sn 192.168.1.1/24
Теперь в открывшемся окне должны появиться результаты сканирования. Далее следует провести сканирование портов нужного узла без добавления каких-либо опций. Запуск утилиты:
# nmap 192.168.1.1
В открывшемся окне будут указаны все порты, используемые различными сервисами на ПК. Не забывайте о том, что каждый из этих портов может послужить уязвимым местом в системе. Если вас не устраивает сжатый вид найденной информации о подключенных портах, попробуйте заполучить развернутые данные. Это можно выполнить данным способом:
# nmap -sV 192.168.1.1
Для осуществления проверки конкретного порта понадобится команда в виде:
# nmap -sC 192.168.56.102 -p 21
В предыдущих примерах рассматривался скрипт по умолчанию, но на практике возможности пользователя гораздо обширнее. Для ознакомления с полным списком доступных скриптов необходимо воспользоваться специальной командой. Она выглядит так:
# find /usr/share/nmap/scripts/ -name ‘*.nse’ | grep ftp
Чтобы утилита функционировала в агрессивном режиме (при таком раскладе в окне будет указана развернутая информация о портах, вызванная всего лишь одной командой, что особенно удобно для неопытного владельца Linux), нужно добавить специальную опцию в стандартную команду. А именно:
# nmap -A 192.168.1.1
Использование nmap
При первом запуске Zenmap мы увидим основное окно. Что же неоходимо нам для того, чтобы начать анализ сети?
Первый шаг— нам нужно указать Цель (Target). Это то, что мы будем анализировать. Допустим, нам нужно просмотреть сеть вида 192.168.0.100. Мы можем просканировать ее целиком — для этого введем диапазон 192.168.0.* в поле Target. В этом случае будут проанализированы все доступные адреса локальной сети этого диапазона.
Второй шаг — это выбор Профиля сканирования. Поле Профиль (Profile) имеет выпадающий список, в котором находятся шаблоны (наборы предустановленных параметров Nmap) для анализа сети — от простого пингования до интенсивного сканирования. Хочу вас предупредить — последний вариант профиля может быть причиной выхода из строя оборудования в небольших сетях. Если у вас имеются роутеры или маршрутизаторы, то при сканировании они могут стать узким местом (в смысле — пропускной способности).
Когда вы выбираете профиль, то можете обратить внимание на происходящие изменения в строке Command. В зависимости от выбранного профиля меняются опции, с которыми запускается Zenmap. Точно такую же строку вы можете ввести в терминале. Другими словами, запуск Nmap с определенными параметрами в командной строке аналогичен запуску Zenmap с соотвествующим профилем.
И так, профиль выбран. Нажимаем кнопку Scan. Процесс сканирования начался. В левом окне будут отображаться обнаруженные IP-адреса (хосты), в правом — лог сканирования.
Внимание! Обязательно дождитесь окончания сканирования, прежде чем переключаться на другие вкладки! Иначе процесс может преждевременно прерваться или вообще завершиться крахом Zenmap. И вы не получите нужных результатов.
На правой панели находятся различные вкладки. Каждая из них служит своей определенной цели.
- Nmap Output: Вкладка по умолчанию. Выводит все команды, выполняемые программой Nmap.
- Ports Hosts: Показывает, какие порты на IP-адресах (хостах) открыты.
- Topology: Представляет в графическом режиме (картинка) топологию сети.
- Host details: Подробная информация о каждом отдельно выбранном хосте. Для того, чтобы выбрать нужный хост, достаточно просто щелкнуть на нем мыщью в левом окне программы.
- Scans: Список всех сканирований, выполненных программой. Вы можете заново запустить любой из них, выбрав его из списка и щелкнув мыщью на кнопке Scan.
Установка nmap на Linux
По умолчанию nmap не установлен в операционною систему Линукс, поэтому его нужно установить.
Centos 8:
dnf install nmap
Для Дебиан / Убунту:
# apt update
# apt install nmap
Centos 7 / Redhat /Fedora
yum install nmap
Сканирование чужих узлов.
В примерах выше для сканирования были выбраны локальный маршрутизатор и одна из рабочих станций, потому что мы имели право на их сканирование. Однако, будет плохой идеей запуск множественного сканирования чужого узла, если вы их не контролируете или не имеете прав для сканирования. Для экспериментов Nmap имеет общедоступный тестовый сервер scanme.nmap.org который Вы можете использовать.
Многие администраторы не любят несанкционированного сканирования их серверов, так что лучшим вариантом будет ограничение сканирования узлов своей локальной сети или тех для которых у вас есть права на сканирование. Также в некоторых случаях вы можете нарушить договор с вашим провайдером, при использовании некоторых особо агрессивных методов сканирования Nmap, поэтому будьте осторожны.
Сканирование нескольких узлов.
Вы можете сканировать больше чем один узел за раз, используя nmap. Если вы производите сканирование по IP-адресу вы можете определить диапазон 10.0.0.1-6 или 10.0.0.0/24.Используя диапазон 10.0.0.1-6 будут сканироваться узлы от 10.0.0.1 до 10.0.0.6. Используя определение /24 будет сканироваться весь диапазон узлов от 10.0.0.0 до 10.0.0.255. Для примера, если нужно просканировать узлы от 10.0.0.1 до 10.0.0.42 и узнать какая ОС вероятно запущена используйте:
nmap –O 10.0.0.1-42
Если у вас есть некоторый список доменных имен вместо IP адресов, вы можете разделить их в командной строке, вот так:
nmap -O host1.target.com host2.target.com
Проверка открытых портов с помощью nmap
Если вы запустите nmap вообще без опций и укажите какой то узел, то он будет сканировать порты и покажет все найденные открытые порты и сервисы запущенные на них. Например запустите:
nmap target.hostname.com
после чего он должен выдать что то похожее на это:
Interesting ports on target.hostname.com (10.0.0.88):
Not shown: 1711 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
3306/tcp open mysql
Nmap done: 1 IP address (1 host up) scanned in 0.228 seconds
Nmap выдаст больше информации если использовать опцию -v (verbose).
Сканирование запущенных сервисов с помощью nmap
Если вы хотите узнать какой сервис возможно запущен попробуйте опцию –sV. Эта опция произведет более агрессивное сканирование и попытается выяснить какая версия сервисов запущена на данном узле, а также может помочь более точно определить какая ОС запущена. Для пример запустим nmap –sV на тестовый сервер и получим следующий ответ:
Starting Nmap 5.21 ( nmap.org ) at 2010-02-28 00:15 EST
Nmap scan report for test.host.net (XX.XXX.XXX.XX)
Host is up (0.090s latency).
Not shown: 965 closed ports, 33 filtered ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1.2 (protocol 2.0)
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) PHP/5.2.4-2ubuntu5.10 with Suhosin-Patch)
Service Info: OS: Linux
Service detection performed. Please report any incorrect results at nmap.org/submit .
Nmap done: 1 IP address (1 host up) scanned in 11.43 seconds
Как вы видите, Nmap может проанализировать пакеты и определить версию запущенного приложений на SSH и HTTP портах. Здесь вы можете увидеть что опрашиваемая система это Ubuntu с Apache 2.2.8 и OpenSSH 4.7p1. Эта информация может быть полезна по ряду причин. Nmap сканирование может идентифицировать систему под управлением устаревших сервисов которые могут быть уязвимы для известных эксплойтов.
Профили сканирования
Для анализа сети в Zenmap вы можете использовать как профили по умолчанию (предустановленные), так и создавать свои собственные. Для того, чтобы создать свой профиль, щелкните на Profile, затем выберите Новыйпрофиль (NewProfile) или Команда (Command) или Редактироватьсуществующийпрофиль (EditCurrentProfile). Если вы хотите внести небольшие изменения, достаточно выбрать необходимый профиль и затем отредактировать его. Например, на скриншоте показан измененный профиль, в который добавлена информация об операционной системе. Чтобы добавить эту информацию, выберите профиль, затем Profile > EditCurrentProfile. В новом окне открываем вкладку Scan и затем выбираем опцию «OS». Кнопка SaveChanges сохраняет изменения и закрывает окно редактирования.
Если вы изменили какой-либо профиль, вам нужно перезапустить сканирование, чтобы получить результат от введенных изменений.
Главные особенности и функции ZenMap
Мощность
У Zenmap отсутствуют ограничения в масштабах сканирования — от одного ПК до нескольких сотен тысяч машин, объединенных в одну большую сеть.
Простота использования
Работать в Zenmap может профессионал, используя самые сильные инструменты, и новичок. Причём пользователь может работать в обоих режимах — консоль или графический интерфейс. Сайт разработчика предлагает массу готовых пакетов для пользования в различных операционных системах специально для тех, кто не имеет желания или возможности собственноручно компилировать программу из исходных данных.
Свобода
Zenmap — бесплатная лицензированная программа, которая содержит в себе полный пакет всех исходников.
Поддержка разработчиков
Программа не даёт пользователям гарантию, однако сообщество разработчиков готово отвечать на любые вопросы пользователей. Наиболее часто используемые варианты сканирования могут быть сохранены в профили, чтобы обеспечить их лёгкий неоднократный запуск в дальнейшем. Мастер создания команд позволяет задавать команды в диалоговом режиме. Результаты сканирования сохраняются в базе данных. Это позволяет легко найти нужный результат, а также сравнивать результаты друг с другом. Благодаря активному сообществу разработчиков и хорошей документации Zenmap очень популярен. О высоком качестве этой программы говорят и многочисленные награды. Zenmap стал практически стандартом среди бесплатных программ для аудита сетей.
Установка и аудит сетей
Прежде чем скачать бесплатно «Зенмап», полезно знать — приложение поддерживает различные методы аудита сетей, включая в сканирование портов, определение наименования и точной версии операционной системы. Zenmap невероятно мощный. Ему «по зубам» компьютерная сеть любого размера, он быстро сканирует сеть даже в сто тысяч узлов. Любые преграды, будь то IP-фильтры, маршрутизаторы или что-то ещё, Zenmap с успехом преодолеет. Несмотря на то что он разрабатывался специально для больших сетей, при желании может точно так же применяться и на единичном сервере.
Установить Zenmap в большинство современных дистрибутивов достаточно просто, если используется готовый установочный пакет с запуском из репозиториев. Удобнее всего запускать из-под рут, потому что для полного пакета Nmap требуются привилегии Superuser.
Интерфейс пользователя
Для начала потребуется цель проверки. Предположим, что нужно отсканировать сеть с IP-адресами, используя маску 192.168.101.*:
- данное клише вводится в поле Target;
- затем в раскрывающемся списке «Профиль» нужно подобрать из предоставленных профиль, который лучше всего подойдёт для сканирования;
- нужно иметь в виду, что сканирование с применением функции «Интенсивного анализа», возможно, навредит некоторым сетевым устройствам, таким как роутеры или свичи. С данными устройствами нужно обращаться крайне осторожно;
- после подбора соответствующего профиля также поменяются данные поля Command, которое содержит nmap с установленными параметрами;
- если есть необходимость, то содержимое команды всегда можно скорректировать под себя.
Когда место назначения установлено и профиль сканирования выбран, следует нажать «Сканировать» и заняться своими делами (а может и нет, все будет зависеть от объёма данной задачи nmap и быстроты сети). Как только сканирование завершится, список хостов, которые были найдены, отобразится на левой панели.
На правой панели можно заметить 5 вкладок:
- nmap output — изначально открывается вкладка, которая отображает вывод текста nmap;
- порты/хосты — в этой вкладке можно посмотреть открытые порты и на каких хостах они открыты;
- topology — эта вкладка отображает топологию данной сети в форме графиков и диаграмм;
- сведения о хосте — здесь отображается вся информация о данных сканирования хоста;
- сканирование — эта вкладка содержит все ранее использованные команды скана, то есть историю.
Зайдя во вкладку Topology, можно отыскать самый занимательный пункт Zenmap. Тут находится топология рассматриваемой сети, которая изображается в формате кластера окружностей с названиями хостов или их сетевыми адресами. Если проверенная сеть довольно велика, разглядеть круги будет практически невозможно.
В таком случае нужно нажать кнопку «Управление», которая находится сверху, и использовать кнопки Zoom и Ring Gap, расположенные справа, чтобы настроить дисплей наилучшим способом. Также можно воспользоваться флажками в разделе «Вид», чтобы выбрать нужную информацию о хосте, отображаемую на карте.
Для комфортного использования новичками Nmap существует официальный графический интерфейс сканера безопасности – Zenmap. Новички зачастую сталкиваются с проблемой, когда невозможно пользоваться программой так же, как и опытным пользователям. Теперь неопытные пользователи без проблем могут использовать все расширенные возможности, которые доступны профессионалам.
Чаще всего результаты сканирования сохраняются в профиле пользователя, чтобы была возможность не единожды повторно их запускать. Чтобы создать команду для Nmap, необходимо перейти в диалоговый режим.
Также существует база данных, где хранятся результаты сканирований, которые можно неоднократно просматривать и при желании сравнивать.
Программа Nmap разработана и создана для быстрого и безопасного сканирования как одного ПК, так и целых компьютерных сетей. Nmap и Zenmap совместимы с большинством операционных сетей. Могут работать и в консольном режиме, и в режиме графического интерфейса.
Zenmap отличает наличие необходимой документации. Установка не представляет собой каких-либо сложностей. Официальный сайт Zenmap публикует установщики для всех распространённых операционных систем — Linux, Windows, FreeBSD.
Выводы и рекомендации по использованию nmap
В заключение хочется сказать, что утилита nmap нередко используется злоумышленниками и я не в коем случае не призываю к действию, данная статья написана в образовательных целях и автор не несет ответственности за ваши действия.
Network Mapper имеет также и графическую оболочку, об этом нужно упомянуть, однако я ей не пользовался и советую сразу работать с терминалом.
Все открытые порты могут использоваться для проведения атак, следовательно стоит закрывать их по возможности на вашем устройстве, особенно в публичных местах и офисах.
[spoiler title=»Источники»]
- https://itmaster.guru/nastrojka-interneta/analiz-lokalnoy-seti.html
- http://pyatilistnik.org/port-scanner-on-the-local-network/
- https://ip-scaner.ru/
- https://www.softslot.com/software-2862-nmap.html
- https://KtonaSoft.ru/nmap/
- https://losst.ru/kak-polzovatsya-nmap-dlya-skanirovaniya-seti
- https://www.make-info.com/nmap/
- https://ITProffi.ru/skanirovanie-setevyh-portov-v-linux-komanda-nmap/
- https://mordeniuss.ru/nmap-commands-examples/
- https://www.vseprolinux.ru/nmap-skaner
- http://rus-linux.net/nlib.php?name=/MyLDP/lvs/nmap/zenmap.html
- https://habr.com/ru/post/88064/
- https://ZenMap.ru/
[/spoiler]
Сканирование портов с Nmap
Методов сканирования много, однако всех их можно разделить на несколько категорий: определение хоста в сети, сканирование портов, обход/обнаружение фаервола, определение ОС. В этой статье мы рассмотрим техники сканирования портов.
TCP connect
Пожалуй самый распространенный и “шумный” способ сканирования. “Шумный” в том плане, что оставляет после себя следы. Принцип работы довольно прост — сканирующий комп просто инициирует TCP соединение со сканируемым объектом, если соединение удалось, значит порт открыт, если отклонено — закрыт, если нет ответа — возможно блокируется фаерволом:
Порт открыт
Вид в Wireshark
Порт закрыт
Вид в Wireshark
Вы возможно заметили, что после установления соединения сканер отправляет RST. Это связано с тем, что для завершения соединения необходимо пройти процедуру FIN-CLOSE, которая состоит из нескольких этапов. Это довольно затратное мероприятие в плане времени, поэтому сканер просто разрывает соединение отправкой RST.
TCP connect довольно медленный способ, кроме того системный администратор может легко определить сам факт сканирования, просто взглянув на логи фаервола:
Теперь вернемся в Nmap. Для запуска данного способа достаточно выполнить:
nmap -sT 192.168.0.45 -p 22,80,445
Как мы видим Nmap помечает порты одним из 3-х состояний: open (открытый), closed (закрытый), filtered (фильтруется фаерволом). Существуют и другие состояния, но об этом позже. С open и closed все понятно, но что означает filtered?
Означает то, что на сканирующий пакет не было получено ответа (в случае с TCP connect) возможно из-за фаервола. Так как техник сканирования много, то и состояния портов тоже могут меняться в зависимости от того ответил хост или нет, а также как ответил. Поэтому рекомендую использовать опцию —reason, которая подскажет на каком основании принято то или иное решение:
nmap -sT —reason scanme.nmap.org -p22,80,139
TCP Syn (Stealth scan)
Данный тип сканирования является менее заметным по сравнению с предыдущим.
Принцип работы заключается в том, что сканирующий комп использует так называемое полусоединение, то есть, получив SYN-ACK от сканируемого устройства, сканер завершает свою работу. Выглядит это так:
Порт открыт
Вид в Wireshark
Порт закрыт
Вид в Wireshark
В конце успешного сканирования мы видим, что сканер посылает TCP RST. Если его не отправить, то сканируемый объект будет считать, что пакет SYN-ACK был потерян и будет снова посылать SYN-ACK, тем самым засоряя сеть ненужными пакетами и демаскируя само сканирование. Поэтому завершающий TCP RST крайне необходим.
Почему данный метод считается менее заметным?
Дело в том, что конечные системы записывают в свои логи сам факт установления соединения. Если попытка соединения была сорвана, то ничего не записывается.
TCP Syn также является более быстрым методом по сравнению с TCP connect. Сканер сразу отправляет пакеты SYN, а затем ждет SYN-ACK. Ему уже не нужно в ответ на SYN-ACK посылать ACK.
Для запуска данного метода выполним команду:
nmap -sS —reason scanme.nmap.org -p 23,80,138
Следует отметить, что данную команду необходимо выполнять от имени суперпользователя (root). Кроме того, при запуске того или иного метода сканирования nmap посылает дополнительные пакеты, чтобы определить, что хост онлайн. В этом легко убедиться, включив опцию —packet-trace:
nmap -sS —packet-trace —reason 192.168.1.2 -p 80
Вид в сканере
Вид в Wireshark
UDP сканирование
На первый взгляд техника сканирования выглядит довольно просто. Сканирующий хост посылает пустой UDP пакет (только UDP заголовок) и ждет ответной реакции от сканируемого объекта:
Порт открыт
Вид в Wireshark
Порт закрыт
Вид в Wireshark
Так выглядит в идеале. Однако в реальности все намного сложнее. UDP не имеет механизма установления соединения, а потому прикладной уровень сканируемого хоста может отбросить принятый пакет и никак не уведомить об этом сканирующую сторону. Поэтому приходится только догадываться открыт ли порт либо на пути стоит фаервол, которые блокирует входящие пакеты:
Пакет игнорируется системой
Пакет блокируется фаерволом
Однако иногда фаервол может отправить уведомление о блокировке пакетов.
В каких случаях хост с открытым UDP портом игнорирует сканирующие пакеты?
Ответ прост. Nmap (да и любые другие сканеры) посылают “пустые” пакеты (только UDP заголовок), то есть не содержат полезной нагрузки или данные:
Принимающая сторона, увидев такой пакет примет его за ошибочный, то есть не соответствующим формату данных конкретного приложения. И поэтому просто его уничтожит. Однако так поступают не все приложения.
Почему же сразу не вставить данные в пакет, которые соответствовали бы формату конкретного приложения?
Дело в том, что приложения, использующие протокол UDP не имеют единого стандартизированного формата данных. А содержать целую базу данных под каждый UDP порт задача довольно сложная, поэтому Nmap старается вставить данные в некоторые пакеты с общеизвестными портами, например, 53 (DNS), 137 (NetBios) и так далее:
Для запуска UDP сканирования со вставкой полезной нагрузки используется команда:
nmap -sUV —reason scanme.nmap.org
Null, Xmas, Fin сканирование
Этот экзотический метод сканирования основан на рекомендации RFC 793. Там сказано, если порт устройства закрыт и принят TCP пакет, в котором не установлен флаг RST, то данное устройство должно отправить пакет с установленным флагом RST. Проще говоря, если принят TCP RST пакет, то порт закрыт. Если никакого ответа не последовало, то порт открыт:
Порт закрыт
Вид в Wireshark
Однако не все так хорошо, как кажется. Не все системы придерживаются рекомендациям RFC, то есть могут просто не ответить на такой необычный сканирующий пакет либо всегда отвечают RST, ACK вне зависимости от состояния портов. К таким системам относится Windows. Ситуация также осложняется наличием фаерволов, так как в большинстве случаев они уничтожают подозрительные пакеты и никак об этом не сообщают. Поэтому в Nmap “неответившие” порты помечаются как opened | filtered. Данный метод рекомендуется использовать совместно с другими методами для улучшения результатов сканирования.
Для запуска сканирования используйте следующие команды:
nmap -sN 192.168.1.2 — Null сканирование
nmap -sF 192.168.1.2 — Fin сканирование
nmap -sX 192.168.1.2 — Xmas сканирование
Комментарии для сайта Cackle
Шпаргалка по Nmap и советы профессионалов
Nmap имеет множество опций, когда вы впервые начинаете играть с этим прекрасным инструментом, это может показаться немного сложным.
В этой шпаргалке вы найдете серию практических примеров команд для запуска Nmap и максимально эффективного использования этого мощного инструмента.
Имейте в виду, что эта шпаргалка касается всего лишь поверхности доступных опций. Портал документации Nmap — это ваш справочник для более глубокого изучения доступных опций.
Выбор цели Nmap
Сканирование одного IP | нмп 192.168.1.1 |
Сканировать хост | nmap www.testhostname.com |
Сканировать диапазон IP | нмп 192.168.1.1-20 |
Сканировать подсеть | нмп 192.168.1.0/24 |
Сканировать объекты из текстового файла | nmap -iL список-ips.txt |
Это все сканирования по умолчанию, которые будут сканировать 1000 портов TCP.Обнаружение хоста будет иметь место.
Выбор порта Nmap
Сканирование одного порта | нмп-п 22 192.168.1.1 |
Сканировать диапазон портов | нмап -п 1-100 192.168.1.1 |
Сканировать 100 наиболее распространенных портов (быстро) | нмп -F 192.168.1.1 |
Сканировать все 65535 портов | нмп-п- 192.168.1.1 |
Типы сканирования портов Nmap
Сканирование с использованием TCP-соединения | нмап -sT 192.168.1.1 |
Сканирование с использованием сканирования TCP SYN (по умолчанию) | нмп -sS 192.168.1.1 |
Сканировать UDP-порты | нмп -sU -p 123,161,162 192.168.1.1 |
Сканировать выбранные порты — игнорировать обнаружение | нмп -Pn -F 192.168.1.1 |
Привилегированный доступ необходим для выполнения сканирования по умолчанию SYN
. Если привилегий недостаточно, будет использоваться сканирование TCP-соединения. TCP-соединение требует, чтобы было установлено полное TCP-соединение, и поэтому сканирование выполняется медленнее.Часто требуется игнорировать обнаружение, поскольку многие брандмауэры или хосты не будут отвечать на PING
, поэтому их можно пропустить, если вы не выберете параметр -Pn
. Конечно, это может значительно увеличить время сканирования, так как вы можете в конечном итоге отправить зонды сканирования на хосты, которых нет.
Взгляните на Nmap Tutorial, чтобы подробно изучить процесс сканирования.
Обнаружение служб и ОС
Обнаружение ОС и служб | нмп-А 192.168.1,1 |
Стандартное обнаружение службы | нмап -sV 192.168.1.1 |
Более агрессивное обнаружение услуг | нмп-сВ — интенсивность версии 5 192.168.1.1 |
Обнаружение захвата баннера зажигалкой | нмп-сВ — интенсивность-версия 0 192.168.1.1 |
Обнаружение служб и ОС основано на различных методах определения операционной системы или службы, работающей на определенном порту. Более агрессивное обнаружение служб часто бывает полезным, если службы работают на необычных портах.С другой стороны, более легкая версия службы будет работать намного быстрее, поскольку на самом деле она не пытается обнаружить службу, просто захватывая баннер открытой службы.
Форматы вывода Nmap
Сохранить вывод по умолчанию в файл | nmap -oN outputfile.txt 192.168.1.1 |
Сохранить результаты как XML | nmap -oX outputfile.xml 192.168.1.1 |
Сохранить результаты в формате для grep | nmap -oG выходной файл.txt 192.168.1.1 |
Сохранить во всех форматах | nmap -oA выходной файл 192.168.1.1 |
Формат по умолчанию также можно сохранить в файл с помощью простой команды перенаправления файла > файл
. Использование опции -oN
позволяет сохранять результаты, но также их можно отслеживать в терминале во время сканирования.
Вывод Nmap в CSV
Nmap по умолчанию не имеет выходного формата csv
. Используйте вывод XML
для извлечения соответствующих полей в csv
с python
.
Перейдите к github и возьмите наш пример скрипта, который можно легко изменить в зависимости от ваших требований. Файлы csv
легко преобразовать в xlsx
для создания отчетов. Это можно сделать вручную или с помощью нашего скрипта преобразования python
.
Копаем глубже с помощью сценариев NSE
Сканирование с использованием безопасных скриптов по умолчанию | нмап -sV -sC 192.168.1.1 |
Справка по сценарию | nmap —script-help = ssl-heartbleed |
Сканирование с использованием специального сценария NSE | nmap -sV -p 443 –script = ssl-heartbleed.nse 192.168.1.1 |
Сканирование с набором скриптов | nmap -sV —script = smb * 192.168.1.1 |
Согласно моей установке Nmap в настоящее время существует 581 сценарий NSE . Скрипты могут выполнять широкий спектр функций тестирования и обнаружения, связанных с безопасностью. Если вы серьезно относитесь к сканированию сети, вам действительно стоит потратить время на то, чтобы ознакомиться с некоторыми из них.
Параметр --script-help = $ scriptname
отобразит справку для отдельных сценариев.Чтобы получить простой список установленных сценариев, попробуйте locate nse | grep скрипт
.
Вы заметите, что я использовал параметр обнаружения службы -sV
. Как правило, большинство сценариев NSE будут более эффективными, и вы получите лучшее покрытие, включив обнаружение служб.
Сканирование для поиска служб UDP с отражением DDOS
Поиск отражателей UDP DDOS | nmap –sU –A –PN –n –pU: 19,53,123,161 –script = ntp-monlist, dns-recursion, snmp-sysdescr 192.168.1.0 / 24 |
Атаки отражения DDOS на основе UDP — распространенная проблема, с которой сталкиваются защитники сети. Это удобная команда Nmap, которая просканирует список целей на предмет систем с открытыми службами UDP, которые позволяют совершать эти атаки. Полную информацию о команде и предыстории можно найти в блоге Sans Institute, где она была впервые опубликована.
Информация об услуге HTTP
Сбор заголовков страниц из HTTP-сервисов | nmap —script = http-title 192.168.1.0 / 24 |
Получить HTTP-заголовки веб-служб | nmap —script = http-заголовки 192.168.1.0/24 |
Найти веб-приложения по известным путям | nmap —script = http-перечисление 192.168.1.0/24 |
Существует множество сценариев сбора информации HTTP, вот несколько простых, но полезных при исследовании больших сетей. Помогает быстро определить, какая HTTP-служба работает на открытом порте. Обратите внимание, что сценарий http-enum
особенно шумный.Он похож на Nikto в том, что он пытается перечислить известные пути веб-приложений и скриптов. Это неизбежно приведет к появлению сотен 404 HTTP-ответов
в журналах ошибок веб-сервера и доступа.
Обнаружение уязвимости SSL с Heartbleed
Тестирование кровотечения | nmap -sV -p 443 —script = ssl-heartbleed 192.168.1.0/24 |
Обнаружение Heartbleed — один из доступных скриптов SSL. Он обнаружит наличие хорошо известной уязвимости Heartbleed в службах SSL.Укажите альтернативные порты для проверки SSL на почте и других протоколах (требуется Nmap 6.46) .
Информация об IP-адресе
Найти информацию об IP-адресе | nmap —script = asn-query, whois, ip-geolocation-maxmind 192.168.1.0/24 |
Соберите информацию, относящуюся к IP-адресу и владельцу сетевого блока IP-адреса. Использует ASN, whois и геолокационные поисковые запросы. Смотрите IP Tools для получения дополнительной информации и аналогичных IP-адресов и поиска DNS.
Удаленное сканирование
Тестирование периметра сети с внешней точки зрения является ключевым моментом, когда вы хотите получить наиболее точные результаты. Оценивая свою уязвимость с точки зрения злоумышленников, вы можете проверить аудит правил брандмауэра и точно понять, что разрешено в вашей сети. По этой причине мы предлагаем размещенную или онлайн-версию сканера портов Nmap. Чтобы включить удаленное сканирование легко и эффективно, потому что любой, кто играл с shodan.io
, очень хорошо знает, насколько плохо люди тестируют свои сети периметра.
Дополнительные ресурсы
Приведенные выше команды — это лишь часть возможностей Nmap. Ознакомьтесь с нашим руководством по Nmap, в котором есть дополнительная информация и советы.
Вы также можете просмотреть полный набор функций, запустив Nmap без параметров. У создателя Nmap, Федора, есть книга, в которой подробно рассматривается этот инструмент.
Знай свою сеть
Хостинг Nmap для сканирования внешних портов
Как использовать Nmap для сканирования открытых портов {обновлено 2021}
Введение
Nmap — это ведущий в мире сетевой сканер безопасности портов.Инструмент безопасности, размещенный на Nmap, может помочь вам определить, насколько хорошо работает ваш брандмауэр и конфигурация безопасности.
Это руководство покажет вам , как использовать Nmap для сканирования всех открытых портов в системах Linux.
Предварительные требования
- Операционная система Linux
- Доступ к учетной записи пользователя с привилегиями sudo или root
- Доступ к командной строке / окну терминала
- Менеджер пакетов apt, включенный по умолчанию (Debian / Ubuntu)
- Менеджер пакетов yum , включено по умолчанию (Red Hat, CentOS)
Что такое порты?
В современных операционных системах порты — это нумерованные адреса для сетевого трафика.По умолчанию разные виды сервисов используют разные порты.
Например, обычный веб-трафик использует порт 80, в то время как электронная почта POP3 использует порт 110. Один из способов работы брандмауэра — это разрешение или ограничение трафика через определенный порт.
Поскольку конфигурация порта может создать угрозу безопасности, очень важно знать, какие порты открыты, а какие заблокированы.
Как сканировать порты Nmap
Чтобы просканировать порты Nmap в удаленной системе, введите в терминал следующее:
судо nmap 192.168.0.1
Замените IP-адрес IP-адресом тестируемой системы. Это основной формат для Nmap , и он возвращает информацию о портах в этой системе.
Помимо сканирования по IP-адресу, вы также можете использовать следующие команды для указания цели:
Для сканирования хоста:
nmap www.hostname.com
Для сканирования диапазона IP-адресов (.1 — .10):
nmap 192.168.0.1-10
Для запуска Nmap в подсети:
нмп 192.168.0.1/13
Для сканирования объектов из текстового файла:
nmap –iL textlist.txt
Примечание: Разработчики nmap.org предоставляют тестовый сервер, на котором вы можете экспериментировать, расположенный на scanme.nmap.org. Вы можете использовать это для тестирования вашей утилиты Nmap.
Сканирование одного порта, всех портов или серии
Команды Nmap могут использоваться для сканирования одного порта или серии портов:
Сканировать порт 80 в целевой системе:
nmap –p 80 192.168.0.1
Сканировать порты с 1 по 200 в целевой системе:
nmap –p 1-200 192.168.0.1
Сканировать (быстро) наиболее распространенные порты:
нмп –F 192.168.0.1
Для сканирования всех портов (1-65535):
nmap –p– 192.168.0.1
Другие типы сканирования портов Nmap
Могут выполняться различные типы сканирования:
Для сканирования с использованием TCP-соединения (требуется больше времени, но более вероятно подключение):
nmap –sT 192.168.0.1
Чтобы выполнить сканирование SYN по умолчанию (выполняется только половина квитирования TCP):
nmap –sS 192.168.0.1
Чтобы указать Nmap сканировать порты UDP вместо портов TCP (переключатель –p указывает порты 80, 130 и 255 в этом примере):
nmap –sU –p 80,130,255 192.168.0.1
Выполнить быстрое сканирование целевой системы, но не обнаруживать хост. (Обнаружение хоста использует ping , но многие серверные брандмауэры не отвечают на запросы ping .Эта опция вызывает тест, не дожидаясь ответа, который может не прийти):
нмп –Pn –F 192.168.0.1
Утилита nmap может использоваться для определения операционной системы конкретной цели:
nmap –A 192.168.0.1
Его также можно использовать для проверки служб, которые могут использовать разные порты:
nmap –sV 192.168.0.1
Примечание: Опцию –sV можно настроить на более или менее агрессивное сканирование.Используйте параметр ––version-depth 2 , чтобы указать уровень тестирования. Замените цифру 2 цифрой от 0 (световая проверка) до 9 (запустить все датчики). Чем интенсивнее тестирование, тем дольше будет сканирование.
Общие порты
Вот краткий список стандартных портов и их обозначений:
- 21 — FTP
- 22 — SSH
- 25 — SMTP (отправка электронной почты)
- 53 — DNS (служба доменных имен)
- 80 — HTTP (веб-сервер)
- 110 — POP3 (почтовый ящик)
- 123 — NTP (сетевой протокол времени)
- 143 — IMAP (почтовый ящик)
- 443 — HTTPS (защищенный веб-сервер)
- 465 — SMTPS (отправка защищенной электронной почты)
- 631 — CUPS (сервер печати)
- 993 — IMAPS (защищенный почтовый ящик)
- 995 — POP3 (защищенный почтовый ящик)
Брандмауэр Linux может быть настроен на блокировку всего трафика на определенном порту.
Например, брандмауэр может быть настроен на блокировку порта 80, но в этом случае пользователи не смогут загружать какой-либо веб-сайт. Вы можете использовать правила брандмауэра, чтобы разрешить одни порты, но заблокировать другие. Используйте брандмауэр в сочетании с другими инструментами и программным обеспечением сетевой безопасности для сканирования трафика на определенном порту и отслеживания подозрительного трафика.
Рекомендации по сканированию Nmap
Вы должны использовать Nmap для сканирования портов только на тех серверах, которыми вы владеете или на которые у вас есть разрешение на сканирование.Часто сканирование портов рассматривается как агрессивный метод или прелюдия к кибератаке. Также считается плохой практикой связывать ресурсы сервера с помощью Nmap для повторного сканирования одной и той же цели.
Возможно, во время сканирования вы обнаружите необычную активность. Например, вы можете увидеть службу, работающую на необычном номере порта. Это означает, что происходит что-то странное и требует расследования.
Параметры сканирования ОС и службы полезны для сканирования определенного порта или службы для получения дополнительной информации.Если служба работает на порту, отличном от порта по умолчанию, это может быть сделано намеренно или может указывать на нарушение безопасности.
Порты часто используются по умолчанию. Большинство портов до 1000 выделены и назначены определенной службе.
Заключение
В этом руководстве представлен обзор сканирования Nmap и того, как его можно использовать для тестирования портов в Linux . Теперь вы должны понять, как работают порты и почему важно знать, как они используются.
Nmap добавляет универсальный инструмент в арсенал любого системного администратора для отладки и обнаружения недостатков безопасности.
Спецификация порта
и порядок сканирования
Этот параметр определяет, какие порты вы хотите сканировать и
отменяет значение по умолчанию. Индивидуальные номера портов в порядке, так как
— это диапазоны, разделенные дефисом (например, 1-1023
). В
начальные и / или конечные значения диапазона могут быть опущены,
заставляя Nmap использовать 1 и 65535 соответственно. Так что вы можете
укажите -p-
для сканирования портов с 1 по
65535. Сканирование
нулевой порт
разрешено, если вы укажете это
явно.Для сканирования протокола IP ( -sO
) эта опция
указывает номера протоколов, которые вы хотите сканировать
(0–255).
При сканировании комбинации протоколов (например, TCP и UDP) вы можете
укажите конкретный протокол, поставив перед номерами портов
T:
для TCP, U:
для UDP,
S:
для SCTP или P:
для IP-протокола.
Квалификатор действует до тех пор, пока вы не укажете другой
квалификатор.Например, аргумент -p
будет сканировать UDP
U: 53,111,137, T: 21-25,80,139,8080
порты 53, 111 и 137, а также перечисленные порты TCP. Примечание
что для сканирования UDP и TCP необходимо указать
-sU
и хотя бы один тип сканирования TCP (например,
-sS
, -sF
или
-СТ
). Если квалификатор протокола не указан,
номера портов добавляются во все списки протоколов.
Порты также могут быть указаны по имени в соответствии с тем, что
порт упоминается в nmap-services
.Ты
можно даже использовать подстановочные знаки *
и
?
с именами. Например, для сканирования
FTP и все порты, имена которых начинаются с «http», используйте -p ftp, http *
.
Будьте осторожны с расширениями оболочки и укажите аргумент -p
, если не уверены.
Диапазоны портов могут быть заключены в квадратные скобки для обозначения
порты внутри этого диапазона, которые появляются в nmap-services
.
Например, следующее будет сканировать все порты в nmap-services
равно или меньше 1024: -p [-1024]
.Будьте осторожны с оболочкой
расширения и процитируйте аргумент -p
, если не уверены.
Учебник по быстрому сканированию портов
Учебник по быстрому сканированию портов
Одна из моих целей при разработке Nmap — сохранить наиболее распространенные
простое использование, сохраняя гибкость для индивидуальных и расширенных
сканирование. Это достигается с помощью интерфейса командной строки с помощью
предлагая десятки вариантов, но выбирая разумные значения по умолчанию, когда они
не указан. Новичок может начать с такой простой команды, как
nmap <цель>
.Между тем, опытные пользователи иногда указывают так много параметров, что их
Терминальная линия оборачивается вокруг.
Аналогичные весы должны быть достигнуты с помощью командного вывода. Большинство
важные результаты должны быть заметны даже для случайного пользователя, который
даже не прочитал справочную страницу. Тем не менее, вывод должен быть исчерпывающим и
достаточно краткий, чтобы подойти профессиональным тестерам на проникновение, которые используют Nmap
против тысяч машин ежедневно. Пользователи достаточно умны, чтобы прочитать это
книга или исходный код Nmap выигрывают от большего контроля над
сканер и понимание того, что на самом деле означает вывод Nmap.
В этом руководстве демонстрируются некоторые распространенные способы сканирования портов Nmap.
сценарии и объясняет вывод. Вместо того, чтобы пытаться быть
всесторонний, цель состоит в том, чтобы просто познакомить новых пользователей достаточно хорошо, чтобы
понять остальную часть этой главы.
Самая простая команда Nmap — это просто nmap by
сам. Это распечатает шпаргалку с общими опциями и синтаксисом Nmap.
Более интересная команда — nmap
, что делает
следующее:
Преобразует
<цель>
из
имя хоста в адрес IPv4 с использованием DNS.Если
Вместо имени хоста указывается IP-адрес, этот поиск пропускается.Пингует хост, по умолчанию с пакетом эхо-запроса ICMP
и пакет TCP ACK на порт 80, чтобы определить, работает ли он и
Бег. Если нет, Nmap сообщает об этом и завершает работу. я мог бы иметь
указал-Pn
, чтобы пропустить этот тест. См. Главу 3, Host Discovery («Ping Scanning») .Преобразует целевой IP-адрес обратно в имя, используя
запрос обратного DNS.Из-за того, как работает DNS, обратное имя
может не совпадать с<цель>
указан в командной строке. Этот запрос можно пропустить с помощью
-n
вариант повышения скорости и
скрытность.Запускает сканирование TCP-портов 1000 самых популярных из перечисленных портов.
вnmap-services
. Скрытое сканирование SYN обычно
используется, но вместо этого используется сканирование подключения для пользователей Unix без полномочий root
у кого нет привилегий, необходимых для отправки сырых
пакеты.Печатает результаты на стандартный вывод в обычном формате.
человекочитаемый формат и выходы. Другие форматы вывода и местоположения
(файлы) можно указать, как описано в главе 13, Форматы вывода Nmap .
Пример 4.2
отображает результаты, когда scanme.nmap.org используется как
<цель>
.
Пример 4.2. Простое сканирование: nmap scanme.nmap.org
# nmap scanme.nmap.org
Запуск Nmap (http: // nmap.org)
Отчет о сканировании Nmap для scanme.nmap.org (64.13.134.52)
Не показано: 994 отфильтрованных порта
ПОРТОВАЯ ГОСУДАРСТВЕННАЯ СЛУЖБА
22 / TCP открыть SSH
25 / tcp закрытый smtp
53 / tcp открытый домен
70 / tcp закрытый суслик
80 / tcp открыть http
113 / tcp закрытая аутентификация
Выполнено Nmap: 1 IP-адрес (1 хост активен) просканирован за 4,99 секунды
Первая выходная строка в
В примере 4.2 просто указан URL-адрес для загрузки Nmap. Время запуска Nmap и
номер версии также обычно предоставляется, хотя они были
обычно удаляется из этой книги для единообразия и во избежание строчки
упаковка.
В следующей строке указан целевой IP-адрес (IPv4 в данном
case), и
обратный DNS
имя (также известное как запись PTR)
если это
имеется в наличии. Nmap обещает показать «интересные порты», хотя все
просканированные порты учитываются. Порты считаются наиболее
интересно, потому что они открыты или находятся в редко встречаемом состоянии для этого
хост расписаны индивидуально. Когда много портов в одном
не открытое состояние, они считаются состоянием по умолчанию и объединяются в
одна линия, чтобы не разбавлять результаты тысячами
неинтересные записи.В этом случае Nmap отмечает, что 994 порта являются
фильтрованный.
Далее следует таблица интересных портов, в которой приводится ключ
результаты сканирования. Столбцы различаются в зависимости от используемых параметров, но в
в этом случае укажите номер порта и протокол, состояние и службу
протокол для каждого порта. Сервис здесь — всего лишь предположение, сделанное
ищу порт в nmap-services
. В
служба будет указана как неизвестно
, если любой из
у портов не было зарегистрированного имени в этом файле. Три из этих портов открыты
и три закрыты.
Наконец, Nmap сообщает некоторую базовую статистику времени перед выходом.
Эта статистика представляет собой количество указанных целей, количество тех,
что сканирование ping завершено, и общее время, затраченное на выполнение.
Хотя часто достаточно этой простой команды, для продвинутых
пользователи часто идут намного дальше. В примере 4.3 сканирование изменено с помощью
четыре варианта. -p0-
просит Nmap сканировать все возможные
TCP-порт, -v
просит Nmap подробно рассказать об этом,
-A
позволяет проводить агрессивные тесты, такие как удаленная ОС
обнаружение, обнаружение службы / версии и движок сценариев Nmap
(NSE).Наконец, -T4
обеспечивает более агрессивный выбор времени.
политика для ускорения сканирования.
Пример 4.3. Более сложный: nmap -p0- -v -A -T4 scanme.nmap.org
# nmap -p0- -v -A -T4 scanme.nmap.org
Запуск Nmap (http://nmap.org)
Сканирование Ping завершено в 00:03, прошло 0,01 с (всего 1 хост)
Сканирование scanme.nmap.org (64.13.134.52) [65536 портов]
Обнаружен открытый порт 22 / tcp на 64.13.134.52
Обнаружен открытый порт 53 / tcp на 64.13.134.52
Обнаружил открытый порт 80 / tcp на 64.13,134,52
Синхронизация скрытого сканирования SYN: выполнено около 6,20%; ETC: 00:11 (осталось 0:07:33)
Завершено скрытое сканирование SYN в 00:10, прошло 463,55 с (всего 65536 портов)
Завершено сканирование служб в 00:10, прошло 6,03 с (3 службы на 1 хосте)
Запуск обнаружения ОС (попытка №1) для scanme.nmap.org (64.13.134.52)
Запуск Traceroute в 00:10
64.13.134.52: угадывание расстояния прыжка на 9
ДВИГАТЕЛЬ СЦЕНАРИЙ завершен в 00:10, прошло 4,04 сек.
Хост scanme.nmap.org (64.13.134.52) работает ... хорошо.
Отчет о сканировании Nmap для scanme.nmap.org (64.13.134.52)
Не показано: 65530 фильтрованных портов
ВЕРСИЯ ГОСУДАРСТВЕННОЙ СЛУЖБЫ ПОРТА
22 / tcp открыть ssh OpenSSH 4.3 (протокол 2.0)
25 / tcp закрытый smtp
53 / tcp открытый домен ISC BIND 9.3.4
70 / tcp закрытый суслик
80 / tcp открыть http Apache httpd 2.2.2 ((Fedora))
| _HTML title: Вперед, ScanMe!
113 / tcp закрытая аутентификация
Тип устройства: общего назначения
Запуск: Linux 2.6.X
Сведения об ОС: Linux 2.6.20-1 (Fedora Core 5)
Предполагаемое время доступности: 2,457 дней (с чт, 18 сентября, 13:13:24 2008 г.)
Прогнозирование последовательности TCP: сложность = 204 (удачи!)
Генерация последовательности IP ID: все нули
TRACEROUTE (с использованием порта 80 / tcp)
HOP RTT АДРЕС
[Первые восемь хмелей сокращены для краткости]
9 10.36 metro0.sv.svcolo.com (208.185.168.173)
10 10.29 scanme.nmap.org (64.13.134.52)
Выполнено Nmap: 1 IP-адрес (1 хост активен) просканирован за 477,23 секунды
Отправлено сырых пакетов: 131432 (5,783 МБ) | Rcvd: 359 (14,964 КБ)
Nmap определенно обеспечил требуемую многословность в Примере 4.3! К счастью, дополнительная
вывод легко понять. Первые 13 новых строк — время выполнения
информация, позволяющая пользователю узнать, что происходит, когда он смотрит
выжидающе у терминала, надеясь на хорошие новости. Какие
представляет собой хорошие новости, зависит от того, является ли она системным
администратор, которому нужно исправить проблемы, тестер, которому нужны
проблемы, о которых нужно сообщить, или взломщик черной шляпы, пытающийся использовать
их.Для краткости удалено около десятка подобных строк. Строки «обнаруженный открытый порт» обеспечивают
уведомление об открытых портах как таковое, чтобы она могла начать стучать
на них еще до завершения сканирования. Строка «время сканирования»
дает оценку времени завершения, чтобы она знала, следует ли сохранять
смотреть на экран или обедать. Поскольку условия сети
(задержка, перегрузка, пропускная способность и т. д.) и правила фильтрации пакетов различаются
так много, одни и те же параметры сканирования могут занять 30 секунд для
один хозяин и 45 минут против другого.Если вы хотите получить текущую оценку времени при сканировании, просто нажмите
входить.
В таблице портов нет новых портов. Все лишние порты просканированы
находятся в отфильтрованном состоянии, увеличивая общее количество отфильтрованных портов с 994
до 65 530. Хотя новых портов в списке нет, в записях есть
измененный. Новый столбец VERSION
содержит сведения об имени и версии приложения для службы прослушивания. Это приходит
от обнаружения службы, одна из функций, включенных
вариант -A
.Еще одна особенность обнаружения сервисов заключается в том, что все
сервисных протоколов в столбце СЕРВИС
фактически были
проверено. В предыдущем сканировании они были основаны на относительно
хлипкая эвристика поиска номера порта nmap-services
.
На этот раз поиск в таблице оказался правильным, но не
всегда быть.
Еще одна функция, добавленная в -A
, — это Nmap.
Механизм сценариев,
который подробно обсуждается в
Глава 9, Механизм сценариев Nmap .Здесь показан только сценарий HTML.
. Существуют десятки других скриптов, но ни один из них не оказался полезным
название
вывод для этой машины. В
трассировка
результаты также были добавлены
по -А
. Этот вариант более эффективен и более
мощнее, чем большинство программ traceroute, так как зондирование выполняется в
parallel, а Nmap использует результаты сканирования для определения подходящего зонда
тип (в данном случае TCP-пакеты на порт 80).
Большинство оставшихся новых строк происходит от обнаружения ОС (также
включен -A
), что подробно обсуждается в
Глава 8, Удаленное обнаружение ОС .Последняя строка показывает, что все эти лишние
за информацию пришлось заплатить — сканирование заняло почти в 100 раз больше времени, чем
Пример 4.2, «Простое сканирование: nmap scanme.nmap.org» для завершения (477
секунд по сравнению с 5).
Как новичок, занимающийся ремонтом автомобилей, я могу бороться Большинство типов сканирования доступны только для Хотя Nmap пытается дать точные результаты, имейте в виду Этот раздел документирует сканирование дюжины или около того портов.
|
Хотя в руководстве показано, как просто выполнить сканирование портов Nmap Выбор методов сканирования Одно из первых соображений при рассмотрении сканирования портов Методы сканирования портов, поддерживаемые Nmap
Файл регистрации порта Nmap Если ни один из этих постоянных наборов портов не соответствует вашим потребностям, произвольный список номеров портов можно указать в командной строке с помощью Примеры выбора порта с опцией
Сканирование портов часто является наиболее трудоемкой частью Nmap Параметры сканирования верхнего порта
Формат вывода и параметры детализации Nmap предлагает возможность писать свои отчеты в своем стандарте. Параметры верхнего вывода Nmap, применимые к сканированию портов
Для сканирования одного хоста (или нескольких из них) просто добавьте их имена Вот несколько вариантов, которые могут оказаться весьма полезными, даже если они
|
Введение в сканирование портов Хотя функциональность Nmap с годами росла, она началась Порты — это просто абстракция программного обеспечения, используемая для различения Nmap работает с двумя протоколами, использующими порты: TCP и UDP.А Поскольку самые популярные услуги зарегистрированы на известном Поскольку поле номера порта имеет ширину 16 бит, значения могут достигать Пока нулевой порт недействителен, ничто не мешает кому-либо Первый класс действительных портов, номеров Диапазон временных портов — это еще один класс портов. Пример 4.1. Просмотр и увеличение временного диапазона портов в Linux felix / # Порты SunRPC часто находятся в временном диапазоне.Другой IANA
Когда в этой книге упоминаются зарегистрированные или общеизвестные порты без Файл регистрации порта Nmap Какие порты самые популярные? Летом 2008 года я сканирую десятки миллионов Интернет-ресурсов. Первые 20 (наиболее часто открытых) TCP-портов
Первые 20 (наиболее часто открытых) UDP-портов
Сканирование портов — это удаленное тестирование множества портов на Хотя многие сканеры портов традиционно объединяют все порты Шесть государств порта, признанных Nmap
Хотя Nmap пытается получить точные результаты, имейте в виду Порт Понимая, что каждый открытый порт — это возможность для компромисса, Важной защитой от этих взломщиков являются системы |