Сканер открытых портов

Сетевые термины в Angry IP Scanner

Далее подсказки из самой программы:

Общая информация

Angry IP Scanner инструмент для сканирования IP адресов.

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

Можно начать указав IP адреса для сканирования(локальные IP введены по умолчанию) и нажав кнопку «Старт».

Основные термины:

Feeder — Источник IP адресов для скнирования. Angry IP Scanner предоставляет разные источники сканирования: Диапазон IP, файл (IP List File) или Случайный. Можно выбрать источник из выпадающего списка рядом с кнопкой «Старт»

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

Активный хост — хост отвечающий на пинг. В листе результатов отмечаются синим.

Неактивный хост — хост не отвечающий на пинг (красный). Тем не менее у него могут быть открытые порты (если брандмауэр блокирует пинг). Для того чтобы полностью просканировать такие хосты поставьте галочку в «Сканировать не активные» в Инструменты->Предпочтения.

Open port — TCP порт, ответивший на попытку соединения. Зеленые в списке.

Filtered port — TCP порт, не отвечает на то, что он закрыт (нет RST пакета). Вероятно эти порты специально блокируются брандмауэрами.

Pinging (проверка хоста):

Angry IP Scanner может использовать разные методы пинга. Их можно выбирать в окне «Предпочтения».

ICMP echo — стандартный метод используемый программой ‘ping’. На большинстве платформ требует права администратора. Некоторые брандмауэры запрещают ответные пакеты на запрос ICMP, делая активные хосты выглядящими не активными.

UDP — посылает UDP пакеты (datagrams) на один из портов хоста и наблюдает за ответом(есть или нет). Не стандартно, но не требует привилегий.

TCP — пытается подключиться к 80 (http) порту. Для некоторых сетей может работать лучше UDP, обычно нет.

Сканирование UDP и TCP чаще всего не определяет маршрутизаторы или другое сетевое оборудование должным образом.

TTL (time to live) — этот сборщик работает только с ICMP пингом. Начальное значение обычно 64 или 128, разница показывает дистанцию до хоста в кол-ве узлов.

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

Используя меню предпочтений вы можете настроить отображение:

  • всех просканированных хостов
  • только активных хостов
  • только хостов с открытым портом

Специальные значения (так же настраиваемы):

  • [n/s] — значение которое вообще не было просканировано (если хост не активен)
  • [n/a] — значение не доступно, но было просканировано

Быстрый сканер портов

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

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

import argparse
import socket # for connecting
from colorama import init, Fore
from threading import Thread, Lock
from queue import Queue

# немного цветов
init()
GREEN = Fore.GREEN
RESET = Fore.RESET
GRAY = Fore.LIGHTBLACK_EX

# количество потоков, можете настроить этот параметр по своему усмотрению
N_THREADS = 200
# очередь потока
q = Queue()
print_lock = Lock()

def port_scan(port):
    """
    Сканируйте порт по глобальной переменной `host`
    """
    try:
        s = socket.socket()
        s.connect((host, port))
    except:
        with print_lock:
            print(f"{GRAY}{host:15}:{port:5} is closed  {RESET}", end='\r')
    else:
        with print_lock:
            print(f"{GREEN}{host:15}:{port:5} is open    {RESET}")
    finally:
        s.close()

Итак, на этот раз функция ничего не возвращает, мы просто хотим распечатать, открыт ли порт (хотя вы можете это изменить).

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

def scan_thread():
    global q
    while True:
        # получаем номер порта из очереди
        worker = q.get()
        # сканировать этого порта
        port_scan(worker)
        # сообщает очереди, что сканирование этого порта
        # сделано
        q.task_done()


def main(host, ports):
    global q
    for t in range(N_THREADS):
        # для каждого потока запускаем его
        t = Thread(target=scan_thread)
        # когда мы устанавливаем daemon в true, этот поток завершится, когда закончится основной поток
        t.daemon = True
        # запускаем поток демона
        t.start()
    for worker in ports:
        # для каждого порта поместить этот порт в очередь
        # чтобы начать сканирование
        q.put(worker)
    # ждем завершения потоков (сканеров портов)
    q.join()

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

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

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

if __name__ == "__main__":
    # разбираем некоторые переданные параметры
    parser = argparse.ArgumentParser(description="Simple port scanner")
    parser.add_argument("host", help="Host to scan.")
    parser.add_argument("--ports", "-p", dest="port_range", default="1-65535", help="Port range to scan, default is 1-65535 (all ports)")
    args = parser.parse_args()
    host, port_range = args.host, args.port_range

    start_port, end_port = port_range.split("-")
    start_port, end_port = int(start_port), int(end_port)

    ports = 

    main(host, ports)

Вот скриншот, когда я пытался сканировать свой компьютер:Результат сканирования портов на своем компьютере

Что означают Профили в 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

9) LAN Sweeper IP Scanner

This tool is free for scanning up to 100 assets (network nodes). Above that, there is a charge of $1 per asset per year.

LAN Sweeper IP Scanner has an integrated help desk, central communication hub, and ticketing system that allows users and agents to open tickets related to network issues. This puts it a step above other IP-scanning programs.

Other than that, it includes all basic and advanced features that a network admin will need in a network discovery software.

The IP scanner functionality of the software is just a small part of a whole umbrella of all the features that are offered. This is a full-fledged centralized IT inventory management solution.

10) Komodo Slitheris Scanner

The website of this software claims that it’s a “Premium IP Scanner for Windows”. It’s a paid tool however you can use it for free if you scan less than 50 network devices.

This makes it ideal for home and small office environments although the paid versions are pretty affordable.

It boasts the title of being a premium next-generation network scanner, being able to gather information from devices without credentials or agents.

The tool can identify the type of operating system of remote hosts by using TCP/IP fingerprinting without having to log in to the remote host or install an agent to the remote host.

However, keep in mind that the above capability is also available on NMAP as well although the device DB of Komodo might be bigger than NMAP.

Онлайн-сервисы

Одним из сервисов, позволяющих выполнить проверку открытых портов по IP адресу пользователя, является portscan.ru.

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

PortScan.ru

Для работы с ресурсом зайдите на сайт — portscan.ru, перейдите в первую вкладку, после чего, достаточно по очереди вводить интересующие порты в представленную на сервисе форму и нажимать кнопку Проверить.

Результат сканирования будет представлен ниже поля ввода.

Рис. 1. Работа приложения Portscan.ru

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

Нажимаете Запустить сканер…, и после некоторого времени вам предоставится результат.

Рис. 2. Запуск сканера портов на сервисе

HideMy.name

Ещё один сайт HideMy.name представляет собой сканер для обнаружения хостов, позволяющий проверить IP-адреса.

Если пользователь вводит в форму сервиса адрес своего ПК, выдаётся информация о его соединениях.

Посмотреть результаты сканирования можно после нажатия кнопки Проверить.

Рис. 3. Сервис проверки соединений сайта HideMy.name.

Ping.eu

Можно проверить порт компьютера и с помощью многофункционального сервиса ping.eu – на этом же ресурсе можно определить и адрес своего прокси сервера.

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

Как показывает пример, доступность локального порта 443 проверкой не подтверждена или другими словами — порт закрыт.

Рис. 4. Использование сервиса ping.eu

Правовые последствия

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

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

17-летний финн был обвинен в попытке взлома компьютера крупным финским банком. 9 апреля 2003 г. он был признан виновным в предъявлении обвинения Верховным судом Финляндии и обязал выплатить 12 000 долларов США за судебно-медицинскую экспертизу, проведенную банком. В 1998 году он просканировал порт банковской сети в попытке получить доступ к закрытой сети, но не смог этого сделать.

В 2006 году парламент Великобритании проголосовал за поправку к Закону о неправомерном использовании компьютеров 1990 года , согласно которой лицо виновно в правонарушении, которое «производит, адаптирует, поставляет или предлагает поставить любой предмет, зная, что он разработан или адаптирован для использования в курсе. или в связи с правонарушением, предусмотренным разделами 1 или 3 «. Тем не менее, область действия этой поправки размыта и широко критикуется экспертами по безопасности как таковая.

В Германии с Strafgesetzbuch § 202a, b, c также есть аналогичный закон, и Совет Европейского Союза выпустил пресс-релиз, в котором говорится, что они планируют принять аналогичный, хотя и более точный.

Моултон против VC3

В декабре 1999 года Скотт Моултон был арестован ФБР и обвинен в попытке взлома компьютера в соответствии с Законом Джорджии о защите компьютерных систем о . В это время его ИТ-сервисная компания имела постоянный контракт с округом Чероки, штат Джорджия, на поддержку и модернизацию службы безопасности центра службы экстренной помощи. Он провел несколько сканирований портов на серверах округа Чероки, чтобы проверить их безопасность, и в конечном итоге просканировал порт веб-сервера, контролируемого другой ИТ-компанией, спровоцировав размолвку, которая закончилась трибуналом. Он был оправдан в 2000 году, и судья Томас Трэш постановил в деле Moulton v. VC3 ( ND Ga. 2000), что не было никакого ущерба, нарушающего целостность и доступность сети.

11) Port Authority Mobile App

While there are countless programs, both free and paid for, that you can get on computers and laptops, there are not many programs that are designed to scan IPs when you are on a mobile device — that is, aside from Port Authority Mobile App (and a few others of course).

As you might be able to imagine, this app is designed to be more effective and useful in scanning your WiFi network since it runs on a mobile device. However, it can find also LAN connected devices as well.

This scanner is meant for Android devices specifically. It can be found on the Google Play Store and it boasts being one of the fastest scanners on the market claiming to scan 1000 ports within 5 to 10 seconds.

Использование утилиты Angry IP Scanner

Angry IP Scanner — это бесплатное решение по сканированию портов компьютера или сервера.

Скачать утилиту https://angryip.org/

Обращаю внимание, что для работы приложения у вас должна быть установлена Java на компьютере, где будите производить запуск вашего порт-сканера, иначе не заработает ничего

Установка Angry IP Scanner очень тривиальная ,на этом я останавливаться не буду, от вас потребуется везде нажать далее. Открываем ваш сканер портов. Я это буду делать на своем тестовом контроллере домена. Когда вы откроете свой сканер портов, у вас будет форма выбора диапазона IP адресов в вашей локальной сети. Так же вы можете указать список адресов из текстового файла.

Структура такого файла представлена на картинке, тут ip-адреса идут с новой строки.

Если вы сканируете порты у целой подсети, то вам нужно указать ее префикс (Маску). После чего нажимаем «Старт».

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

  • Синий цвет означает, что данный хост доступен, но для него не заданы порты сканирования, об этом так же говорит статус «Ports n/s (Not/Scan)»
  • Зеленый цвет, что хост доступен и для него определены порты для сканирования
  • Красный цвет — не доступен

Настроим диапазон портов, которые я бы хотел проверить на предмет их прослушивания. Для этого нажмите значок шестеренки. В открывшемся окне перейдите на вкладку порты. В поле выбора порта укажите диапазон, в моем примере, это будет диапазон от 1 до 1024. Именно его мы и будем проверять.

У вас в столбце Ports изменится значение, нажимаем кнопку «Старт».

Начинается процесс обращения к портам, хочу отметить, что сама процедура не быстрая и идет в 100 потоков, но так же у каждой операционной системы свои лимиты и тайминги. В итоге вы увидите в столбце Ports список портов, которые прослушивает ip адрес сервера, к которому было обращение. Мы таким образом определяли порты Active Directory. Angry IP Scanner имеет и дополнительные встроенные утилиты, кликните правым кликом по нужному хосту и из пункта «Открыть» вы можете увидеть их:

  • Windows Shares — будет открыт проводник с сетевыми шарами сервера
  • Web Browser — откроет в браузере 80 порт для данного хоста
  • FTP — попробует подключиться к FTP
  • Telnet
  • Ping — будет открыта командная строка в которой будет запущен пинг
  • Trace route — запуск в командной строке утилиты tracert
  • Geo Locate
  • Email sample

Еще интересным моментом у Angry IP Scanner может выступать добавление дополнительных полей. Для этого нажмите кнопку в виде параллельных палочек. В открывшемся окне с помощью стрелок переместите нужные поля. Я для примера добавил TTL и MAC Address.

При необходимости программа сканера портов легко может экспортировать полученные данные в текстовый файл для дальнейшего изучения. Сделать это можно из меню «Сканирование» или нажатие клавиш Ctrl+S.

Отчет будет выглядеть вот в такой форме.

Какие порты бывают?

Порты являются виртуальными путями, по которым информация передается от компьютера к компьютеру. Всего есть 65536 портов на выбор..

Порты 0 до 1023 — Самые известные номера портов. Наиболее популярные службы работающие на портах: база данных MS SQL (1433), почтовые услуги POP3 (110), IMAP (143), SMTP (25), веб-сервисы HTML (80).

Порты от 1024 до 49151 — зарезервированные порты; это означает, что они могут быть зарезервированные для конкретных протоколов программного обеспечения.

Порты 49152 по 65536 — динамические или частные порты; это означает, что они могут быть использованы кем угодно.

Краткий обзор

Многопоточно сканировать IP-адрес можно быстро и безошибочно. Пользователю доступна одновременная проверка большого количества IP-адресов. При этом устройства не теряют скорость, особенно работающие на базе Pentium, сети – класс B и C.

С помощью ПО можно:

  • указать число потоков для равновесия темпа проверки и загрузки процессора. выключить компьютер удалённо — с этой функцией девайс, имеющий операционную систему Win2K или Windows NT, может выключаться дистанционно;
  • использовать право доступа по умолчанию Wake-on-LAN — оно обеспечивает прекращение работы необходимого прибора удалённо, при условии, что поддерживается сетевой картой;
  • выполнять групповые операции, например одним нажатием деактивировать сразу несколько компьютеров, работающих дистанционно.

Чтобы регулярно проводить манипуляции для определенных компьютеров, их перечень можно загрузить в Advanced IP Scanner.

Сканеры открытых портов и айпи адресов

Использование бесплатных программ

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

  1. Advanced IP Scanner v.1.4. Из всех бесплатных программ этот сетевой сканер самый быстрый, при этом он умеет не только находить ПК в режиме «онлайн», но и определять NetBIOS имя, версию ОС и MA- адрес. Также есть набор утилит, позволяющих управлять удаленным хостом.
  2. Advanced LAN Scanner v1.0 BETA. Подобна предыдущей программе, позволяет сканировать Сеть, но включает в себя работу с портами.
  3. Advanced Port Scanner v1.2. Также бесплатная программа, при помощи которой можно просканировать открытые порты удаленного хоста.
  4. IP-Tools v2.50. Это уже не просто обособленная программа, а набор инструментов, включающий в себя 19 утилит, позволяющих осуществлять детальный просмотр и анализ параметров локально-вычислительной Сети.
  5. Angry IP Scanner 2.21. Простая утилита для сканирования IP-адресов и портов.
  6. SuperScan 4. Довольно гибкий сканер, позволяющий в дополнение к стандартным функциям задавать тип сканирования (устанавливать флаги), о которых было написано ранее.
  7. NMAP (https://nmap.org). Это также целый набор инструментов, который стоит в конце списка только по той причине, что не имеет дружественного интерфейса. При этом он совмещает в себе все известные профессиональные утилиты для работы с Сетью, распространяется для всех платформ, причем как в виде сборок, так и в виде исходного кода (что позволяет писать собственные приложения с его использованием).

Программа для определения IP-адресов в локальной Сети

Выше уже рассматривался целый список программ, который позволяет найти и вывести IP-адреса хостов в Сети, при этом оптимальным является Advanced IP Scanner. Следует заметить, что как Windows, так и Linux в своем распоряжении имеют набор встроенных сетевых утилит, одна из которых называется «ARP — Address Resolution Protocol», или протокол определения адреса. Для того чтобы при помощи ее вывести список IP-адресов в локальной Сети, необходимо открыть командную строку (cmd или bash) и ввести команду arp -a, после чего нажать «Enter». Результатом будет таблица, содержащая NetBIOS имя, IP-адрес, MAC-адрес и способ его получения (динамический или статический).

Как сканировать LAN, узнать IP и MAC-адреса.

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

  1. Первым делом рекомендуется первоначальная настройка установленного ПО, сделать это можно в соответствующем пункте меню.
  2. Во вкладке «Производительность» выбрать наиболее подходящую для себя (и своего ПК) скорость сканирования. Не рекомендуется выбирать максимальную скорость на офисных ПК или ноутбуках, в таком случае прога может работать нестабильно. При наличии редких и специфичных девайсов (различных сетевых касс, специфичного оборудования для бизнеса или откровенно китайских и никем не поддерживаемых девайсов) рекомендуется поставить галочку «Высокая точность сканирования». При использовании стандартных устройств её можно не ставить.
  3. Теперь можно переходить к непосредственному поиску гаджетов, указав необходимый диапазон IP-адресов (по умолчанию у большинства коммутаторов или роутеров используется диапазон от 192.168.0.1 до 192.168.0.254), и нажать кнопку «Сканировать». В некоторых случаях диапазон адресов может быть изначально изменён вручную, поэтому вводить нужно будет именно его (сканирование стандартных ip практически ничего не даст).
  4. В нашем случае было определено три устройства: ПК, на котором запущен сканер, беспроводной роутер и смартфон, подключенный по Wi-Fi. По каждому из гаджетов присутствует полная информация, такая как текущий ip-адрес (при желании его можно поменять), производитель техники и MAC адрес.

Сканирование портов онлайн по IP

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

Используя сканер портов онлайн по IP, пользователь или администратор веб-ресурса получают возможность повысить уровень безопасности используемого компьютера или сервера. Задействовав сканер, установленный на нашем сайте, вы получите максимально полный, а главное быстрый ответ о доступных портах на данный момент времени. Сейчас это лучший способ проконтролировать уровень безопасности соединения непосредственно в online режиме.

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

Сканирование точек доступа в сеть часто используется хакерами для подготовки целенаправленных или разрозненных атак. Именно поэтому стоит пользоваться их же методами для обнаружения угроз безопасности.