Проверить порты kali linux

Как проверить (сканировать) на наличие открытых портов в Linux

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

В этой статье описывается несколько подходов к выяснению того, какие порты открыты извне в вашей системе Linux.

Что такое открытый порт

Порт прослушивания — это сетевой порт, который прослушивает приложение. Вы можете получить список прослушивающих портов в вашей системе, запросив сетевой стек с помощью таких команд, как ss , netstat или lsof . Каждый порт прослушивания может быть открыт или закрыт (отфильтрован) с помощью брандмауэра.

В общих чертах, открытый порт — это сетевой порт, который принимает входящие пакеты из удаленных мест.

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

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

Проверьте открытые порты с помощью nmap

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

Если возможно, nmap должен стать вашим первым инструментом для сканирования портов. Помимо сканирования портов, nmap также может определять Mac-адрес, тип ОС , версии ядра и многое другое.

Следующая команда, выдаваемая с консоли, определяет, какие порты прослушивают TCP-соединения из сети:

-sT указывает nmap сканировать TCP-порты, а -p- сканировать все 65535 портов. Если -p- не используется, nmap будет сканировать только 1000 самых популярных портов.

Приведенные выше выходные данные показывают, что в целевой системе открыты только порты 22 , 80 и 8069 .

Для поиска портов UDP используйте -sU вместо -sT :

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

Проверьте открытые порты с помощью netcat

Netcat (или nc ) — это инструмент командной строки, который может читать и записывать данные через сетевые соединения, используя протоколы TCP или UDP.

С помощью netcat вы можете сканировать отдельный порт или диапазон портов.

Например, для поиска открытых TCP-портов на удаленном компьютере с IP-адресом 10.10.8.8 в диапазоне 20-80 вы должны использовать следующую команду:

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

Результат будет выглядеть примерно так:

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

Чтобы сканировать UDP-порты, передайте параметр -u команде nc :

Проверьте открытые порты с помощью псевдоустройства Bash

Другой способ проверить, открыт или закрыт определенный порт, — использовать оболочку Bash /dev/tcp/.. или /dev/udp/.. псевдоустройство.

При выполнении команды на псевдоустройстве /dev/$PROTOCOL/$HOST/$IP Bash откроет TCP или UDP-соединение с указанным хостом на указанном порту.

Следующий оператор if..else проверяет, открыт ли порт 443 на kernel.org :

Как работает приведенный выше код?

При подключении к порту с помощью псевдоустройства таймаут по умолчанию огромен, поэтому мы используем команду timeout чтобы завершить тестовую команду через 5 секунд. Если соединение установлено с портом 443 kernel.org тестовая команда вернет true.

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

Результат будет выглядеть примерно так:

Выводы

Мы показали вам несколько инструментов, которые вы можете использовать для поиска открытых портов. Существуют также другие утилиты и методы для проверки открытых портов, например, вы можете использовать модуль socket Python, curl , telnet или wget .

Читайте также:  Linux policy based routing

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

Источник

Как посмотреть открытые порты в Linux

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

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

Как посмотреть открытые порты linux

1. netstat

Утилита netstat позволяет увидеть открытые в системе порты, а также открытые на данный момент сетевые соединения. Для отображения максимально подробной информации надо использовать опции:

  • -l или —listening — посмотреть только прослушиваемые порты;
  • -p или —program — показать имя программы и ее PID;
  • -t или —tcp — показать tcp порты;
  • -u или —udp показать udp порты;
  • -n или —numeric показывать ip адреса в числовом виде.

Открытые порты Linux, которые ожидают соединений имеют тип LISTEN, а перед портом отображается IP адрес на котором сервис ожидает подключений. Это может быть определенный IP адрес или */0.0.0.0 что означают любой доступный адрес:

sudo netstat -tulpn

Утилита ss — это современная альтернатива для команды netstat. В отличие от netstat, которая берет информацию из каталога /proc, утилита ss напрямую связывается со специальной подсистемой ядра Linux, поэтому работает быстрее и её данные более точные, если вы хотите выполнить просмотр открытых портов это не имеет большого значения. Опции у неё такие же:

Можно вывести только процессы, работающие на 80-том порту:

sudo ss -tulpn | grep :80

3. lsof

Утилита lsof позволяет посмотреть все открытые в системе соединения, в том числе и сетевые, для этого нужно использовать опцию -i, а чтобы отображались именно порты, а не названия сетевых служб следует использовать опцию -P:

Ещё один пример, смотрим какие процессы работают с портом 80:

sudo lsof -i -P | grep :80

4. Nmap

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

sudo apt install nmap

Затем можно использовать:

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

Если это публичный сервер, то результат скорее всего не будет отличатся от локального сканирования, но на домашнем компьютере все немного по другому. Первый вариант — используется роутер и в сеть будут видны только порты роутера, еще одним порогом защиты может стать NAT-сервер провайдера. Технология NAT позволяет нескольким пользователям использовать один внешний IP адрес. И так для просмотра открытых внешних портов сначала узнаем внешний ip адрес, для надежности воспользуемся онлайн сервисом:

wget -O — -q eth0.me

Дальше запускаем сканирование:

В результате мы видим, что открыт порт 80 веб-сервера и 22 — порт службы ssh, я их не открывал, эти порты открыты роутером, 80 — для веб-интерфейса, а 22 для может использоваться для обновления прошивки. А еще можно вообще не получить результатов, это будет означать что все порты закрыты, или на сервере установлена система защиты от вторжений IDS. Такая проверка портов может оказаться полезной для того, чтобы понять находится ли ваш компьютер в безопасности и нет ли там лишних открытых портов, доступных всем.

5. Zenmap

Программа Zenmap — это графический интерфейс для nmap. Она не делает ничего нового кроме того, что может делать nmap, просто предоставляет ко всему этому удобный интерфейс. Для её установки выполните:

Читайте также:  Скрипт if linux условие или

sudo apt install zenmap

Запустить программу можно из главного меню или командой:

Затем введите адрес localhost в поле Цель и нажмите кнопку Сканирование:

После завершения сканирования утилита вывела список открытых портов Linux.

Выводы

В этой статье мы рассмотрели инструменты, которые вы можете использовать для того чтобы узнать узнать открытые порты linux. Инструментов не так много как для просмотра информации об оперативной памяти или процессоре, но их вполне хватает. А какими программами пользуетесь вы? Напишите в комментариях!

Источник

Этичный хакинг с Михаилом Тарасовым (Timcore)

Блог об Этичном Хакинге

#36 Kali Linux для начинающих. Сканируем порты с помощью Kali Linux.

Теперь, когда я узнал айпи-адрес нашей машины, мне нужно узнать, какие сервисы на ней работают, и какие порты открыты. Для этого мы воспользуемся нашим инструментом, который называется «nmap».

Давайте я покажу Вам пару новых опций «nmap».

Первая – это опция «-v», т.е подробный режим, где мы сообщаем нашему инструменту, что нужно выводить больше информации. Если Вы запустите «nmap» с опцией «-v», то довольно часто Вы можете наблюдать пустой экран. Также можно воспользоваться опциями: «-vv» «-vvv». Чем больше «v», тем больше выводится информации на экране.

Далее идет опция «-p-» или «-p 0-65535». Она означает сканирование всех tcp-портов. Далее идет опция «-A», которая отображает версию операционной системы, и уже можно сказать, что это стадия разведки. Для вывода большего перечня информации мы конечно же будем использовать ее, но она занимает намного больше времени, чем простое сканирование. Так как мы хотим взломать машину, нам нужно будет узнать как можно больше информации о ней, поэтому мы используем опцию «-A».

Далее пишем ip-адрес нашей цели, который у меня выглядит как: «192.168.15.131». Также я хочу, чтобы у меня был отчет по окончании сканирования, и у «nmap» есть 3 типа вывода. Обычный вывод, похожий на текстовый файл. Это просто копирование того, что выводится на экран. Также есть вывод в файл «gnmap». И последний третий вывод – это xml, который подается на вход другим инструментам. Сейчас я хочу сохранить вывод файлов в трех форматах: nmap, gnmap и xml. Нам нужно дописать команду опциями «–oA”, и в конце назовем файл «metasploitable2» и нажмем Enter.

В итоге у нас получится команда: «nmap –v –p 0-65535 –A 192.168.15.131 –oA metasploitable2»:

Поскольку мы выбрали достаточно много опций, которые выводят много информации, нам остается только ждать завершения сканирования. И это все всего лишь один ip-адрес. Сканирование может занять достаточное количество времени. Теперь представьте на реальном примере, сколько нужно ждать, если у Вас не один ip-адрес, а 100 или 200. В этом примере сканирование у меня прошло быстро, и мне не пришлось его останавливать:

Также рассмотрим опцию «-T», которая позволяет сканировать айпи адреса в тихом режиме, чтобы не сработали системы обнаружения. У нее есть параметр от 1 до 5, где цифра 1 – это очень медленное сканирование.

Не забываем, что мы указывали создание трех файлов-отчетов с разными расширениями. Они находятся в моей текущей директории:

Давайте упорядочим наш список файлов, перенеся их в отдельную директорию:

Команды должны быть Вам уже известны.

Для просмотра файлов можно использовать команду «cat» или «less», для постепенного просмотра файлов:

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

Источник

Статья Первый шаг к взлому (nmap сканирование портов)

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

  1. Backtrack 5 or Kali Linux
  2. Терпение

Это будет первый учебник по серии, который даст основное представление что такое пентест. Есть много инструментов на Kali linux дистрибутиве, которые не будут охвачены в этих серии, но если у читателей есть какие-либо вопросы о других инструментов, напишите сообщение. Это первая часть нацелена на сбор информации и имеет название как (nmap сканирование портов). Она будет сосредоточена на поиске живых хостов в сети, а также на просмотра их версий программного обеспечения и на их работающих портах.

Читайте также:  Блютуз не обнаруживает устройства windows 10

Для этого упражнения мы будем использовать следующие инструменты: Nmap

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

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

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

Мы в сети как 192.168.1.1

nmap -sV 192.168.1.1/24

Эта команда будет проверять все 254 хостов в сети и перечислять открытые порты вместе с версией программного обеспечения, работающего на этом хосте. Я использую только 2 машины в своей сети и я сделал это, чтобы сократить учебник. Вот результаты:

Если бы мы имели большую сеть, коммутатор -p может использоваться для четкого указания какие порты искать. Так:

nmap -sV 192.168.1.1/24 -p 21,80,445

Одна вещь, которую я рекомендую: чтобы всегда, я имею в виду всегда сканировать сеть в режиме UDP и искать открытые порты SNMP. Старые версии SNMP уязвимы для атак, поскольку они используют строки государственного и частного для входа в систему. Если вы не знаете, какие порты SNMP или SNMP являются, Google является вашим другом.

Для выполнения такого рода сбора информации вы должны использовать команду -Su. Дабы сказать Nmap сканировать UDP-порты. Наша команда должна будет выглядеть так:

nmap -sU 192.168.1.1/24 -p161, 162

Мы указываем порты 161 и 162, так как они являются портами где SNMP работает.

Когда работает UDP сканирование запомните, что Протокол UDP не проверяет соединение так что это хорошая идея, чтобы проверить если порт на самом деле открыт для соединения с Netcat.

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

nmap —script-help script name

Это команда покажет вам скрипт и то, что он делает.

Первые скрипты которые мы будем использовать это SMB скрипты, так как у нас SMB-порт 445 открыт.

Это еще не все! у Nmap есть еще пару прекрасных команд.
nmap -sS —script ftp-anon 192.168.1.2 192.168.1.14
Эта команда будет проверять если включен анонимный FTP логин на целевой машине.
nmap -A 192.168.1.2
Эта команда позволит запускать все скрипты и много других вариантов, вот описание из меню справки: Enable OS detection, version detection, script scanning, and traceroute.

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

Nmap -sS -А 192.168.1.2

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

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

Следующий инструмент который мы будем использовать один из моих любимых это Netcat. Если мы откроем терминал и введем nc. Мы увидим меню справки Netcat. Далее мы будет работать через порты и попытаться соединиться с основными командами NetCat:

NC -v 192.168.1.2 445.

Это приведет к запуску программе и подключиться к порту 445.

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

Источник

Оцените статью