Определение открытых портов. Программы для сканирования IP-адресов и портов

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

Энциклопедичный YouTube

    1 / 5

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

    Nmap для начинающих - Урок 1 | Timcore

    Пишем простой и быстрый сканер IP адресов и открытых портов на Ruby (с использованием потоков)

    Advanced IP Scanner 2.3 - как легко просканировать сеть и узнать IP, Mac-адреса всех устройств.

    Как Проверить Открыт ли Порт средствами Windows

    Субтитры

Протокол TCP/IP

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

Результат сканирования порта обычно подпадает под одну из трёх категорий:

  • Открыт , или соединение принято (англ. open ): хост послал ответ, подтверждающий, что хост «слушает» - принимает соединения на данный порт.
  • Закрыт , запрещено [ ] , не слушает (closed ): хост послал ответ, показывающий, что соединения на данный порт будут отвергнуты.
  • Заблокирован , отфильтрован (filtered , firewalled ): от хоста не поступило ответа.

Уязвимости, связанные с открытыми портами, подразделяются на:

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

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

Техническая сторона

Технологии сканирования портов исходят из предположения, что хост поддерживает «Протокол управления пересылкой» (ICMP), определённый в RFC 792 . Хотя это в большинстве случаев так, тем не менее, хост может посылать в ответ странные пакеты, или даже генерировать ложные положительные срабатывания, когда используемый стек TCP/IP не соответствует RFC или был подвергнут изменениям.

Типы сканирований

Проверка онлайна

В ряде случаев, прежде чем начать собственно сканирование, является полезной проверка наличия работающей системы на целевом IP-адресе. Эта задача может быть решена путём посылки Echo-сообщений протокола ICMP с помощью утилиты ping c последовательным перебором всех адресов сети или отправкой Echo-сообщения по широковещательному адресу.
Анализируя трафик и отслеживая Echo-сообщения, посылаемые за короткий промежуток времени всем узлам, можно выявить попытки сканирования. Вместо Echo-сообщений могут применяться TCP -сегменты с code bit RST , ответы на несуществующие DNS -запросы. Если сканер получит в ответ ICMP Destination Unreachable пакет с кодом 1 (host unreachable), то значит, тестируемый узел выключен или не подключен к сети.

Следует иметь в виду, что (на практике) неполучение ответа на запросы не гарантирует несуществование хоста, поскольку многие системные администраторы ради «безопасности» идут на нарушение сетевых стандартов.

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

Данный тип сканирования является наиболее популярным. Вместо использования сетевых функций операционной системы, сканер портов сам генерирует IP пакеты, и отслеживает ответы на них. Эту технику часто называют сканированием с использованием полуоткрытых соединений, поскольку полное соединение TCP/IP никогда не открывается. Сканер портов генерирует пакет SYN. Если порт на целевом хосте открыт, с него придёт пакет SYN-ACK. Хост сканера отвечает пакетом RST, закрывая тем самым соединение до того, как процесс установления соединения завершился.

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

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

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

Данный более простой метод использует сетевые функции операционной системы, и применяется, когда SYN-сканирование по тем или иным причинам неосуществимо. Операционная система, в случае, если порт открыт, завершает трёхэтапную процедуру установления соединения, и затем сразу закрывает соединение. В противном случае, возвращается код ошибки. Преимуществом данного метода является то, что он не требует от пользователя специальных прав доступа. Тем не менее, использование сетевых функций операционной системы не позволяет производить низкоуровневый контроль, поэтому данный тип используется не столь широко.

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

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

Сканирование с помощью пакетов UDP также возможно, хотя имеет ряд особенностей. Для UDP отсутствует понятие соединения, и нет эквивалента TCP-пакету SYN. Тем не менее, если послать UDP-пакет на закрытый порт, система ответит сообщением ICMP «порт недоступен». Отсутствие такого сообщения истолковывается как сигнал того, что порт открыт. Однако, если порт блокируется брандмауэром , метод неверно покажет, что порт открыт. Если заблокированы ICMP-сообщения о недоступности порта, все порты будут казаться открытыми. Также, может быть установлено ограничение на частоту использования ICMP-пакетов, что также влияет на результаты, даваемые методом.

Альтернативным подходом является отправка UDP-пакетов, специфичных для приложения, в расчёте на получения ответа с уровня приложения. Например, отправка запроса DNS на порт 53 приведёт к ответу, если по запрашиваемому адресу имеется DNS-сервер. Проблема в данном случае состоит в наличии соответствующего «пробного» пакета для каждого из портов. В некоторых случаях, сервис может присутствовать, но быть сконфигурирован таким образом, чтобы не отвечать на известные «пробные» пакеты.

Также возможен комбинированный подход, сочетающий в себе оба вышеуказанных метода. Так, сканирование может начинаться отправкой UDP-пакета для проверки на ICMP-ответ «порт недоступен», а затем порты с неопределённым результатом «открыт или заблокирован» могут повторно проверяться на ответы, специфичные для приложения.

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

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

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

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

Сканирование с использованием FIN-пакетов позволяет обойти подобные средства защиты. Согласно RFC 793 , на прибывший FIN-пакет на закрытый порт сервер должен ответить пакетом RST. FIN-пакеты на открытые порты должны игнорироваться сервером. По этому различию становится возможным отличить закрытый порт от открытого.

  • Неправомерный доступ к компьютерной информации, если это повлекло уничтожение, блокирование, модификацию либо копирование информации, нарушение работы ЭВМ, системы ЭВМ или их сети;
  • Создание, использование и распространение вредоносных программ для ЭВМ;
  • Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети, повлекшее уничтожение, блокирование или модификацию информации.

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

Сканер портов. Общие сведения

Сканер портов - программное обеспечение, разработанное с целью поиска хостов , имеющих открытые порты.

Данный тип утилит, как правило, используется системными администраторами (а также злоумышленниками) для проверки безопасности сетей (а также их уязвимостей).

В зависимости от поставленных задач, сканирование на предмет всех открытых портов производят как для одного (сканирование портов), так и для множества хостов (сканирование сети).

Также возможен вариант поиска лишь одного открытого порта (или определенной группы) для множества хостов сети.

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

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

Помимо, собственно, открытых портов сканеры позволяют определить установленную на хосте операционную систему и работающие службы (Web-сервер, FTP-сервер , Mail-сервер), включая номера их версии.

Совет! Для определения открытых портов своего компьютера, под управлением операционной системы:

  • Windows, следует зайти в командную строку (Пуск, «cmd», запустить от имени администратора) и ввести команду «netstat -bn», без кавычек.
  • Linux , следует зайти в терминал и выполнить команду «ss -tln», также без кавычек.

PortScan.Ru

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

Для того, чтобы просканировать все наиболее распространенные порты следует перейти в раздел «Сканер портов ». Для запуска воспользуйтесь кнопкой «Запустить сканер портов».

Список портов, которые будут просканированы и их соответствие сервисам указаны на этой же странице в соответствующем разделе.

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

Помимо сканирования портов сервис позволяет измерить пинг, узнать WHOIS-информацию о домене, получить информацию на основе HTTP-запроса от удаленного веб-сервера.

Ресурс предоставляет 2 бесплатные утилиты «Открытые порты» и «PortCheker» для использования на ПК и в качестве расширения для браузера Google Chrome соответственно.

Из недостатков ресурса отметим невозможность сканирования всех портов (а лишь указанных разработчиками), а также удаленных ресурсов.

HideMe.Ru

Онлайн сканер открытых портов HideMe.Ru , более универсален по сравнению с PortScan.Ru , позволяя сканировать не только свой компьютер, но и любой другой хост Интернет-сети.

Также может выбирать тип сканируемых портов: популярные порты, индивидуальные (т.е. заданные пользователем) и порты, встречающиеся у прокси-серверов.

Интерфейс HideMe.Ru онлайн сканера портов имеет русскую, английскую и испанскую локализацию, довольно прост, а его использование не вызывает лишних вопросов.

В поле ввода пользователь вводит IP-адрес или доменное имя сканируемого хоста, выбирает тип сканирования и ждет результатов проверки.

Сканирование довольно долгое, в случае, если вы хотите проверить наиболее популярные порты, время ожидания составит около 3 минут (на PortScan.Ru на это уходило около 30 секунд).

Судя по всему, сервис сканирует первую 1000 портов, в отличие от PortScan.Ru, где в общем случае сканируется лишь 5-6 десятков.

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

Из дополнительных опций имеется функция измерения скорости Интернет-соединения и определения IP-адреса.

Так же как и у PortScan.Ru , имеется каталог статей, посвященных безопасной работе в Интернет-сети.

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

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

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

Способ 1: Portscan

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


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

Способ 2: Hide my name

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

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


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

Способ 3: Тест IP

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

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


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

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

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

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



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

Примечание: если вы запускаете сканер портов для 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 и т. д.

Online Port Scan

Use this tool to scan individual ports to determine if the device is listening on that port. Scanning TCP ports only (UDP scanning available soon by free registration). Over 12,052,607,959 ports scanned for our guests.

Host name or IPv4 address:
Scan this list of port numbers:
Scan a range of ports:
(less than 500 ports please)
Beginning port number
Ending port number
FTP/file server open/vulnerable (port 21) TELNET service open/vulnerable(port 23)
SMTP relay vulnerable (port 25) POP3/mail server vulnerable (port 110)
HTTP/web server vulnerable (port 80) Scan for Windows file sharing susceptibility (port 445)
Scan for NETBIOS susceptibility (port 139) Scan for firewall remote login (port 8080)
Microsoft Remote Desktop vulnerable (port 3389) VNC Remote Desktop vulnerable (port 5900)
VPN (PPTP) service open/vulnerable (port 1723) Microsoft SQL Server open/vulnerable (port 1433)
Oracle database service open/vulnerable (port 1521) MySQL database open/vulnerable (port 3306)

A full list of port number assignments are maintained by T1 Shopper.

Like breeze blowing through the windows on a house, ports are just hardware locations used for passing data in and out. Like the breeze blowing in and out of the window, computers send information out (and receive data in) though these windows, or ports. (Not to confuse you but computers have internal ports (for connecting disk drives, monitors, keyboards, etc) as well as external ports (for connecting modems, printers, mouse devices, and other peripheral devices). But I"m not going to geek out about internal or external ports, let"s just keep it simple here. How about an example?

  • I"m using port 80 (yes, I"m a web server computer) for sending this web page to your web browser. I"m do this by reading the web page off my disk then send it flying out of my port 80, over the merry Internet, all the way to your blazing fast computer. Your computer will receive it through a "receiving port" (which will not be port 80) and finally your web browser will read the HTML code and display it as the nice-looking web page you"re reading right now.

But why port 80? Why do web servers use port 80? Nothing special about that number - people just got together and willy-nilly decided that port 80 would be the default port on which a web server would send out its content. Don"t believe me? Ok, try this out: Go to your favorite web site, let"s say but instead of typing it in like you usually would, add a ":80" after the ".com" part, like this: . Magic! You"ll get the same web page even if you specify the port number!

So what"s the advantage of having port numbers like this? Well, with publicly-agreed on port numbering, entering a port number becomes optional! Yes, it"s faster - we don"t have to type our fingers silly entering the port number every time. Instead of we can just type and our computers know (because of the http prefix) that we are requesting a web page and so it uses port 80 by default, without us having to type it. Aren"t computers fun!

Ok, let"s really geek out! Port numbers have been divided into three ranges: the Well Known Ports (0 through 1023), the Registered Ports (1024 through 49151), and the Dynamic and/or Private Ports (these are very highest ports 49152 through 65535 and usually used for receiving data, as in our example above). And who keeps track of all these default port numbers, port lists and protocols? The Internet Assigned Numbers Authority. IANA not only coordinates this but also all the worldwide domain names and IP address assignments. They"re busy. If you are a true geek, you"ll enjoy the dry reading at RFC793 which gives the full technical description of ports.

Some viruses attack specific ports on your computer as part of their design such as the old SASSER virus which used TCP port 445. To test if you might be vulnerable to the SASSER virus, use the above port scan tool to scan port 445. If the portscan says it can get through port 445 on whatever firewall you hopefully have, and your computer"s port 445 is also open/active, then you may be susceptible to the SASSER virus.

For a complete security/virus scan T1 Shopper suggests visiting the following tools:

  • Symantec Security Check
  • ShieldsUp!
Статьи по теме: