Сканер ip на открытые порты. Инструменты для сканирования портов

Если вам нужно из Windows просканировать порты компьютеров и устройств в локальной сети или в Интернете, то одним из лучших вариантов является связка Nmap и Zenmap (графический интерфейс для Nmap).

Nmap имеет большое количество опций сканирования, а графический интерфейс Zenmap делает использование программы крайне простым.

Возможности Nmap включают:

  • сканирование портов
  • определение операционной системы удалённого хоста
  • определение служб, программного обеспечения и их версий на удалённом хосте

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

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

Когда всё будет готово, на рабочем столе появится ярлык программы:

Основное окно программы выглядит так:

В поле Цель нужно указать адрес сайта (URL), IP или диапазон IP адресов для сканирования.

В поле Профиль из выпадающего списка нужно выбрать желаемый профиль.

Как указать Цель в Zenmap (Nmap)

Адреса сайтов следует указывать без протокола, например:

  • mi-al.ru
  • suip.biz

Неправильной было бы указание вида https://mi-al.ru

IP адреса можно указывать по-одному, например, 192.168.0.1; используя адресацию CIDR, например, 192.168.0.1/24; а также указывая диапазоны в одном или нескольких октетах, например, 192.168.0.1-100, или 192.160-170.50-100.1

Что означают Профили в Zenmap

Профили в главном окне Zenmap - это набор опций типичных сканирований. Рассмотрим все профили Zenmap.

  • Intense scan (Интенсивное сканирование)

Интенсивное всестороннее сканирование. Опция -A включает сразу несколько других опций: определение версии ОС (-O ), определение версий запущенных служб (-sV ), сканирование с использованием скриптов (-sC ) и трассировку (--traceroute ). Без привилегий администратора запускается только определение версии и сканирование с помощью скриптов. Это считается интрузивным (навязчивым) сканированием.

  • Intense scan plus UDP (Интенсивное сканирование плюс UDP)

Делает определение ОС (-O ), определение версий (-sV ), сканирование с помощью скриптов (-sC ) и трассировку (--traceroute ) в дополнение к сканированию портов TCP и UDP.

  • Intense scan, all TCP ports (Интенсивное сканирование, все TCP порты)

Сканирует все TCP порты, затем делает определение ОС (-O ), определение версий (-sV ), сканирование скриптами (-sC ) и трассировку (--traceroute ).

  • Intense scan, no ping (Интенсивное сканирование без пинга)

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

  • Ping scan (Пинг)

Это сканирование только определяет, какие цели работают и не выполняет сканирование портов.

  • Quick scan (Быстрое сканирование)

Это сканирование быстрее обычного сканирования, поскольку оно использует агрессивный шаблон тайминга и сканирует меньше портов.

  • Quick scan plus (Быстрое сканирование плюс)

Быстрое сканирование, плюс определение ОС

  • Quick traceroute (Быстрая трассировка)

Трассирует пути до целей без выполнения полного сканирования их портов.

  • Regular scan (Обычное сканирование)

Базовое сканирование без дополнительных опций.

  • Slow comprehensive scan (Медленное всестороннее сканирование)

Это всестороннее, медленное сканирование. Сканируется каждый TCP и UDP порт. Выполняется определение ОС (-O ), определение версии (-sV ), сканирование скриптами (-sC ) и трассировка (--traceroute ). Отправляется множество запросов зондирования для обнаружения хостов. Это очень интрузивное сканирование.

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

С помощью удобного редактора профиля вы можете редактировать и создавать новые профили.

Хотя использование редактора профиля содержит описание выполняемых действий и, следовательно, не требует знания опций Nmap, для более глубокого понимания программы вы можете познакомиться с описанием всех опций Nmap на странице https://kali.tools/?p=1317

Если вы хотите просканировать все TCP порты, то укажите цель и в качестве команды введите nmap -p 1-65535

Результаты сканирования

Результаты, полученные при последнем сканировании видны во вкладке Вывод Nmap. В левой части вы можете переключаться между Узлами и Сервисами . При клике на определённый узел, вы увидите предыдущие результаты сканирования. При клике на сервис, вы увидите узлы, на которых данных сервис был обнаружен:

Для просмотра обобщённой информации по узлу, кликните на него и выберите вкладку Детали узла :

Во вкладке Топология вы увидите информацию о связях между просканированными/обнаруженными узлами:

Использование Nmap на Windows в командной строке

Если вам нужна консольная версия Nmap, то вы можете использовать её на Windows точно также, как и на Linux. При установке Nmap добавляет в переменные окружения путь до исполнимого файла Nmap, поэтому в командной строке вам достаточно указать имя программы:

Заключение

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

Графический интерфейс позволяет упростить использование программы, но для получения навыков по различным техникам сканирования рекомендуется ознакомиться со всеми опциями программы.

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

Регулярно в форумах, и не только в них, поднимается вопрос - «Меня сканируют! Что мне делать?» Причиной возникновения данного вопроса являются модули детектирования атак, которые разработчики персональных файрволов встраивают в свои продукты. Насколько вообще опасно данное явление, чего пытается достичь атакующий, и была ли собственно атака? Для того, чтобы понять это, попробуем сначала разобраться - что такое порты, что такое сканирование этих портов и каким образом выполняется проникновение в систему через сеть.

Предупреждение читателям: авторы осознают, что данный материал охватывает далеко не все возможные типы сетевых угроз. Данный материал ориентирован на домашних пользователей, озабоченных страшными предупреждениями, которыми их радостно снабжает добрый дядя Касперский (или Нортон, или еще кто-либо, в зависимости от используемого продукта). Следует помнить, что сетевые угрозы не ограничиваются описанными здесь.

Для начала - что такое порт. Порт - это поле в tcp- или udp-пакете, идентифицирующее приложение-получателя (и отправителя, в пакете этих полей два) пакета.

Формат пакета данных TCP-протокола:

Формат пакета данных UDP протокола:

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

А была ли атака? Еще один часто задаваемый вопрос звучит примерно так: «Почему, когда я подключаюсь к FTP-серверу, файрвол начинает жаловаться на сканирование со стороны FTP-сервера?» Типичный пример ложного срабатывания. Рассмотрим, как работает FTP-протокол. В FTP-протоколе используется не одно соединение, а два - одно из них управляющее, второе непосредственно передает данные. Первое (управляющее) открывает клиент - он подключается на порт 21 сервера. Второе подключение зависит от режима работы клиента. Если клиент в активном режиме, то он передает серверу номер порта, на который сервер должен подключиться, чтобы открыть соединение для передачи данных. В пассивном сервер говорит клиенту, на какой порт клиент должен подключаться, чтобы открыть соединение для передачи данных.

Как следует из этого описания, в активном режиме FTP-сервер открывает подключение к клиенту. Файрвол, а многие из них известные параноики, вполне может реагировать на это, как на попытку атаки.

Подведём итоги : сетевая атака в большинстве случаев представляет собой атаку на какой-либо доступный из сети сервис на вашем компьютере. Если такого сервиса у Вас нет - можно не беспокоиться, что кто-то Вас «взломает». В этом случае опасаться следует других угроз - вирусы, malware (нежелательные программы), и другие внутренние воздействия. Рекомендации по предотвращению - стандартны и описаны много раз. Установите антивирус, регулярно его обновляйте, регулярно устанавливайте обновления операционной системы, не запускайте неизвестные Вам программы и так далее. Но даже и в этом случае наличие персонального файрвола на компьютере может помочь Вам в случае, когда антивирус или обновления операционной системы ещё не в состоянии блокировать новые угрозы. Просто всегда внимательно читайте, что именно предлагает Вам сделать та или иная программа, и старайтесь понять, а нужно ли, чтобы это действие действительно было выполнено.

Хотим отметить, что по умолчанию в настройках Windows систем для работы с приложениями в локальной сети, есть открытые для внешнего доступа «серверные» сервисы, то есть те к которым можно обратится с другого компьютера. Поэтому не стоит отключать встроенный брандмауэр (файрвол), либо не пренебрегайте установкой сторонних продуктов подобной функциональности.

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

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



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

Примечание: если вы запускаете сканер портов для DNS Вашего сайта, а он находится за такими прокси, как CloudFlare или SUCURI, то он может не выдать точную информацию. Используйте настоящий IP адрес сервера.

Сканер портов от MX ToolBox

MX Toolbox пытается проверить 15 наиболее часто используемых портов с таймаутом в 3 секунды и выдает результаты, какие из них открыты, а какие нет.

Онлайн сканер портов

Этот инструмент - персональный проект Javier Yanez, позволяющий бесплатно просканировать порты для IPv4 и IPv6 адресов.

Сканер портов от T1 Shopper

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

Сканер портов от Hacker Target

Выполняет быстрое сканирование шести наиболее распространенных портов (FTP, SSH, SMTP, HTTP, HTTPS, RDP) сканером портов NMAP.

Сканер портов от DNS Tools

Быстро сканирует некоторые распространенные порты, такие как FTP, SMTP, DNS, Finger, POP3, SFTP, RPC, IRC, IMAP, VNC и т. д.

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

Вешаем службу отвечающую по нужному порту

Как я и писал выше, пока сервисы не развернуты, то и порты никто не слушает, но нам необходимо произвести проверку, чтобы потом к этому не обращаться. Нам необходимо с помощью специальной утилиты, эмулировать прослушивание нужного нам порта (сокета) , те кто из вас знает такую операционную систему , как Centos 7, то они помнят, в ней была отличная утилита под названием netcat. Она позволяла с помощью определенных команд слушать нужный администратору порт.

netcat - утилита Unix, позволяющая устанавливать соединения TCP и UDP, принимать оттуда данные и передавать их. На Windows платформах, она так же присутствует.

Распаковываем архив на сервере, где в будущем будет работать служба. В папке вам будут необходимы файлы nc.exe и nc64.exe. Далее зажимаете Shift и щелкаете правым кликом по папке, из контекстного меню выбираете пункт "Открыть окно команд"

Теперь представим, что я хочу чтобы на сервере работал 80 порт, ну типа IIS сервер . Открываем netcat, для начала посмотрите справку:

  • -d detach from console, background mode
  • -e prog inbound program to exec
  • -g gateway source-routing hop point[s], up to 8
  • -G num source-routing pointer: 4, 8, 12, ...
  • -h this cruft
  • -i secs delay interval for lines sent, ports scanned
  • -l - слушать входящие соединения
  • -L listen harder, re-listen on socket close
  • -n numeric-only IP addresses, no DNS
  • -o file hex dump of traffic
  • -p - какое соединение будет прослушивать
  • -r randomize local and remote ports
  • -s - задать локальный адрес назначения
  • -t answer TELNET negotiation
  • -c send CRLF instead of just LF
  • -u - UDP режим
  • -v verbose
  • -w secs timeout for connects and final net reads
  • -z zero-I/O mode

Нас интересует команда вот такого вида:

netcat-win32-1.12>nc.exe -l -p 80

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

Как проверить открыт ли порт на сервере

Теперь перейдем на другой сервер и попытаемся проверить открытые порты на удаленном сервере. В решении нашей задачи, мы будем использовать утилиту telnet, как ее устанавливать смотрите . Открываем командную строку и вводим такую строку:

telnet 10.242.17.134 80

Как видите я указал нужный мне ip адрес и нужный номер порта

Кстати проверить открытые порты на компьютере, где расположена служба, можно командой:

telnet localhost номер 80

Если ip адрес вам не отвечает на ваш запрос, то вы увидите попытку подключения, после чего вам покажут, что этого сделать не удалось.

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

Через внешние утилиты

Проверить открыть ли порт, можно и внешними утилитами, тут главное требование, чтобы у вас был белый ip имеющий доступ в интернет. Представим себе, все туже ситуацию, что вам необходимо протестировать 80 соединение, на котором будет сайт компании. Вы его развернули, но он почему-то не работает. Не так давно, я вам рассказывал про сервис ping.eu (). Одним из пунктов этого инструментария был port check (проверка открытых портов). В поле "ip address or host name" вы пишите ip адрес или dns имя сервиса, что требует проверки, а в соседнем поле, необходимый номер сокета, в моем случае 80, нажимаете "Go". Через секунду, вы получите результат, открыты порты 80 или 443 у сайта или нет. В моем случае статус "open".

Массовая проверка открытых портов в сети и локально

Существуют специальные утилиты, в задачи которых входит сканирование компьютера или сервера, на предмет доступных портов, по которым есть соединение, они называются сканеры портов. Таких программ очень много, я приведу пример в виде XSpider 7.7. Как проверить открыт ли порт в утилите XSpider 7.7. Щелкаем правым кликом по "сканированные хосты" и добавляем хост или диапазон ip адресов.

Прописываете, что именно будет подвергаться проверке.

Нажимаем значок запуска и запускаем процедуру.

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

Понравилась статья? Поделиться с друзьями: