- Статья Первый шаг к взлому (nmap сканирование портов)
- Этичный хакинг с Михаилом Тарасовым (Timcore)
- #36 Kali Linux для начинающих. Сканируем порты с помощью Kali Linux.
- Packages and Binaries:
- ndiff
- nmap-common
- Как пользоваться Nmap для сканирования сети
- Как работает Nmap?
- Синтаксис Nmap
- Как пользоваться Nmap для сканирования портов в Linux
- Выводы
Статья Первый шаг к взлому (nmap сканирование портов)
Информация, содержащаяся в данном руководстве для образовательных и информационных целей, используйте её на свой страх и риск. Мы не несем никакой ответственность за ваши действия.
Требования
- Backtrack 5 or Kali Linux
- Терпение
Это будет первый учебник по серии, который даст основное представление что такое пентест. Есть много инструментов на Kali linux дистрибутиве, которые не будут охвачены в этих серии, но если у читателей есть какие-либо вопросы о других инструментов, напишите сообщение. Это первая часть нацелена на сбор информации и имеет название как (nmap сканирование портов). Она будет сосредоточена на поиске живых хостов в сети, а также на просмотра их версий программного обеспечения и на их работающих портах.
Для этого упражнения мы будем использовать следующие инструменты: 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.
Вам возможно, придется нажать кнопку ввода пару раз, чтобы получить от порта ответ. Вы не должны видеть порт закрытым на удаленным хосте. Если это так и порт закрыт, то есть много вещей, которые могут закрыть его. Будьте уверены и проверьте еще раз машину на все открытые порты.
Источник
Этичный хакинг с Михаилом Тарасовым (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-адрес и выявили наличие множества открытых портов, и большое количество сервисов.
Источник
Packages and Binaries:
ncat is a reimplementation of Netcat by the NMAP project, providing most of the features present in the original implementations, along with some new features such as IPv6 and SSL support. Port scanning support has been removed.
Installed size: 776 KB
How to install: sudo apt install ncat
Concatenate and redirect sockets
ndiff
Ndiff is a tool to aid in the comparison of Nmap scans. It takes two Nmap XML output files and prints the differences between them them: hosts coming up and down, ports becoming open or closed, and things like that. It can produce output in human-readable text or machine-readable XML formats.
Installed size: 383 KB
How to install: sudo apt install ndiff
ndiff
Utility to compare the results of Nmap scans
Nmap is a utility for network exploration or security auditing. It supports ping scanning (determine which hosts are up), many port scanning techniques, version detection (determine service protocols and application versions listening behind ports), and TCP/IP fingerprinting (remote host OS or device identification). Nmap also offers flexible target and port specification, decoy/stealth scanning, sunRPC scanning, and more. Most Unix and Windows platforms are supported in both GUI and commandline modes. Several popular handheld devices are also supported, including the Sharp Zaurus and the iPAQ.
Installed size: 4.81 MB
How to install: sudo apt install nmap
- libc6
- libgcc-s1
- liblinear4
- liblua5.3-0
- libpcre3
- libssh2-1
- libssl1.1
- libstdc++6
- lua-lpeg
- nmap-common
- zlib1g
Network exploration tool and security / port scanner
nping
Network packet generation tool / ping utility
nmap-common
Nmap is a utility for network exploration or security auditing. It supports ping scanning (determine which hosts are up), many port scanning techniques, version detection (determine service protocols and application versions listening behind ports), and TCP/IP fingerprinting (remote host OS or device identification). Nmap also offers flexible target and port specification, decoy/stealth scanning, sunRPC scanning, and more. Most Unix and Windows platforms are supported in both GUI and commandline modes. Several popular handheld devices are also supported, including the Sharp Zaurus and the iPAQ.
This package contains the nmap files shared by all architectures.
Installed size: 20.28 MB
How to install: sudo apt install nmap-common
Источник
Как пользоваться Nmap для сканирования сети
Nmap — это очень популярный сканер сети с открытым исходным кодом, который может использоваться как в Windows, так и в Linux. Программа Nmap или Network Mapper была разработана Гордоном Луоном и на данный момент используется специалистами по безопасности и системными администраторами по всему миру.
Эта программа помогает системным администраторам очень быстро понять какие компьютеры подключены к сети, узнать их имена, а также посмотреть какое программное обеспечение на них установлено, какая операционная система и какие типы фильтров применяются. Функциональность программы может быть расширена за счет собственного скриптового языка, который позволяет администраторам автоматизировать много действий.
Например, с помощью скриптов можно автоматически обнаруживать новые уязвимости безопасности в вашей сети. Namp может использоваться с хорошими и плохими намерениями, будьте аккуратны, чтобы не использовать nmap против закона. В этой инструкции мы рассмотрим как пользоваться namp для сканирования портов в операционной системе Linux. Но сначала нужно попытаться понять как работает эта утилита.
Как работает Nmap?
В компьютерных сетях все подключенные устройства имеют свой ip адрес. Каждый компьютер поддерживает протокол ping, с помощью которого можно определить подключен ли он к сети. Мы просто отправляем ping запрос компьютеру, и если он отзывается, то считаем, что он подключен. Nmap использует немного иной подход. Компьютеры также определенным образом реагируют на те или иные сетевые пакеты, утилита просто отправляет нужные пакеты и смотрит какие хосты прислали ответ.
Но об этом вы, наверное, уже знаете. Более интересно то как Nmap узнает какие сервисы запущены на машине. Суть работы всех сетевых программ основана на портах. Чтобы получить сообщение из сети, программа должна открыть порт на вашем компьютере и ждать входящих соединений. А для отправки сообщения по сети нужно подключиться к уже другой программой (адресатом) порту. Затем программе необходимо будет открыть порт, на котором она будет ждать ответа.
Утилита nmap в процессе сканирования сети перебирает доступный диапазон портов и пытается подключиться к каждому из них. Если подключение удалось, в большинстве случаев, передав несколько пакетов программа может даже узнать версию программного обеспечения, которые ожидает подключений к этому порту. Теперь, после того, как мы рассмотрели основы, рассмотрим как пользоваться nmap для сканирования портов и сети.
Синтаксис Nmap
Команда запуска Nmap очень проста для этого достаточно передать ей в параметрах целевой IP адрес или сеть, а также указать опции при необходимости:
$ nmap опции адрес
Теперь давайте рассмотрим основные опции, которые понадобятся нам в этой статье.
- -sL — просто создать список работающих хостов, но не сканировать порты nmap;
- -sP — только проверять доступен ли хост с помощью ping;
- -PN — считать все хосты доступными, даже если они не отвечают на ping;
- -sS/sT/sA/sW/sM — TCP сканирование;
- -sU — UDP сканирование nmap;
- -sN/sF/sX — TCP NULL и FIN сканирование;
- -sC — запускать скрипт по умолчанию;
- -sI — ленивое Indle сканирование;
- -p — указать диапазон портов для проверки;
- -sV — детальное исследование портов для определения версий служб;
- -O — определять операционную систему;
- -T3 — скорость сканирования, чем больше, тем быстрее;
- -D — маскировать сканирование с помощью фиктивных IP;
- -S — изменить свой IP адрес на указанный;
- -e — использовать определенный интерфейс;
- —spoof-mac — установить свой MAC адрес;
- -A — определение операционной системы с помощью скриптов.
Теперь, когда мы рассмотрели все основные опции, давайте поговорим о том, как выполняется сканирование портов nmap.
Как пользоваться Nmap для сканирования портов в Linux
Дальше рассмотрим примеры nmap. Сначала давайте рассмотрим как найти все подключенные к сети устройства, для этого достаточно использовать опцию -sL и указать маску нашей сети. в моем случае это 192.168.1.1/24. Маску вашей локальной сети вы можете найти, выполнив команду:
Из вывода для используемого интерфейса возьмите число после слеша, а до слэша укажите ip вашего роутера. Команда на сканирование сети nmap будет выглядеть вот так:
nmap -sL 192.168.1.1/24
Иногда это сканирование может не дать никаких результатов, потому что некоторые операционные системы имеют защиту от сканирования портов. Но это можно обойти, просто использовав для сканирования ping всех ip адресов сети, для этого есть опция -sn:
nmap -sn 192.168.1.1/24
Как видите, теперь программа обнаружила активные устройства в сети. Дальше мы можем сканировать порты nmap для нужного узла запустив утилиту без опций:
sudo nmap 192.168.1.1
Теперь мы можем видеть, что у нас открыто несколько портов, все они используются каким-либо сервисом на целевой машине. Каждый из них может быть потенциально уязвимым, поэтому иметь много открытых портов на машине небезопасно. Но это еще далеко не все, что вы можете сделать, дальше вы узнаете как пользоваться nmap.
Чтобы узнать более подробную информацию о машине и запущенных на ней сервисах вы можете использовать опцию -sV. Утилита подключится к каждому порту и определит всю доступную информацию:
sudo nmap -sV 192.168.1.1
На нашей машине запущен ftp, а поэтому мы можем попытаться рассмотреть эту службу подробнее с помощью стандартных скриптов nmap. Скрипты позволяют проверить порт более детально, найти возможные уязвимости. Для этого используйте опцию -sC и -p чтобы задать порт:
sudo nmap -sC 192.168.56.102 -p 21
Мы выполняли скрипт по умолчанию, но есть еще и другие скрипты, например, найти все скрипты для ftp вы можете командой:
sudo find /usr/share/nmap/scripts/ -name ‘*.nse’ | grep ftp
Затем попытаемся использовать один из них, для этого достаточно указать его с помощью опции —script. Но сначала вы можете посмотреть информацию о скрипте:
sudo nmap —script-help ftp-brute.nse
Этот скрипт будет пытаться определить логин и пароль от FTP на удаленном узле. Затем выполните скрипт:
sudo nmap —script ftp-brute.nse 192.168.1.1 -p 21
В результате скрипт подобрал логин и пароль, admin/admin. Вот поэтому не нужно использовать параметры входа по умолчанию.
Также можно запустить утилиту с опцией -A, она активирует более агрессивный режим работы утилиты, с помощью которого вы получите большую часть информации одной командой:
sudo nmap -A 192.168.1.1
Обратите внимание, что здесь есть почти вся информация, которую мы уже видели раньше. Ее можно использовать чтобы увеличить защиту этой машины.
Выводы
В этой статье мы рассмотрели как выполняется сканирование портов nmap, а также несколько простых примеров использования этой утилиты. Эти команды nmap могут быть полезными многим системным администраторам, чтобы улучшить безопасность их систем. Но это далеко не все возможности утилиты. Продолжайте экспериментировать с утилитой чтобы узнать больше только не в чужих сетях!
Источник