Приветствую тебя, мой дорогой читатель, в третьей части серии статей «Приручение черного дракона. Этичный хакинг с Kali Linux”.

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

Приручение черного дракона. Этичный хакинг с Kali Linux:

Часть 1. Вводная часть. Подготовка рабочего стенда.

Часть 2. Фазы атаки.

Часть 3. Footprinting. Разведка и сбор информации.

Часть 4. Сканирование и типы сканирования. Погружение в nmap.

Сегодня мы поговорим о первой фазе абсолютно любой атаки называемой футпринтинг (разведка и сбор информации о цели).

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

Если в целом разделять тестирование на проникновение по типам, то можно выделить условно три типа тестов: тип белый ящик (whitebox), тип серый ящик (greybox), и тип черный ящик (blackbox). Поговорим немного о каждом из вышеупомянутых методов.

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

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

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

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

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

И так, погнали!:)

Запускаем машину Kali Linux и Metasploitable2 (о том, как их скачать и установить я писал в самой первой части серии).

Открываем терминал в Kali и переходим в привилегированный режим командой sudo -s

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

1) Набрать команду arp-scan -l которая выведет нам весь список устройств в сети кроме нашей машины с Kali;

2) Узнать для начала IP адрес нашей машины, командой ip address, а затем просканировать всю сеть утилитой netdiscover, которая выдаст нам тот же результат, что и arp-scan.

Проверим оба варианта. Сперва просканируем сеть с помощью arp-scan:

Введем команду ip address и получим следующий результат:

Как видно на скриншоте, команда вывела нам список сетевых интерфейсов на нашем устройстве со всей подробной информацией о них, включая физические MAC-адреса и IP адреса. Первый интерфейс loopback с адресом 127.0.0.1 он нам не особо интересен, а вот второй eth0 – это и есть тот самый сетевой интерфейс который получает от нашего виртуального маршрутизатора адрес: 192.168.238.128 (у вас он может быть другим, но это не столь важно).

Далее попробуем просканировать всю сеть утилитой netdiscover
наберем команду netdiscover -r 192.168.238.0/24 и посмотрим на результат:

Для того, чтобы остановить сканирование нажмем сочетание клавиш Ctrl+C.

И так, мы видим в списке несколько устройств.

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

Сканирование займет какое-то время, после чего nmap выведет нам результат.

Как мы видим на скриншоте выше, у одного из хостов с адресом 192.168.238.129 nmap обнаружил огромное количество открытых служебных портов. В том числе и 80-й порт http.

Отлично! Попробуем ввести его в адресной строке браузера и посмотрим что там.

Бинго! Это именно тот ресурс который мы хотели найти. Теперь нам известен его IP адрес и нам так же известно какие сервисы кроме http на нем еще открыты. Для сбора большей информации сканером nmap используем ключ -sV (scan version), который позволит нам узнать тип и семейство операционной системы, версию отдельных сервисов, что вполне может быть полезно при дальнейшем поиске уязвимостей цели.

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

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

Список довольно таки внушительный. Где-то сканер нашел страницу phpMyAdmin для управления базой данных MySQL и директорию test которая может быть интересна для дальнейшего исследования. Так же сканер обнаружил, что ресурс подвержен атаке на основе межсайтовой трассировки XST и позволяет применить к некоторым формам XSS-атаку.

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

Естественно, примеры рассматриваемые в настоящей серии статей самые простые. Но как показывает практика, довольно часто начинающие (и не только) специалисты обслуживающие IT инфраструктуру компании допускают одни и те же "детские" ошибки, связанные с несвоевременным обновлением устаревших версий ПО сетевого оборудования и ОС на рабочих ПК (тут можно вспомнить эпидемию связанную с RouterOS версий младше 6.41, или эксплоит под Windows CVE-2017-0144 с кодовым названием Eternal Blue), отключением брандмауэра "потому что с ним что-то не работает, а разбираться в этом лень" и многим банальным на первый взгляд вещам. И я сейчас нисколько не преувеличиваю, а описываю все то, с чем сталкивался лично в работе.

Именно эти ошибки чаще всего и становятся той самой роковой точкой входа для злоумышленника.

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

Комментарии (2)


  1. mrkaban
    25.10.2022 07:18

    Сами инструменты нападения рассматривать не будете? burp для xss, или XSStrike, metasploit конечно популярен, но и его можно показать.

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


    1. V1p3rL0rd Автор
      25.10.2022 08:07
      +3

      Здравствуйте! Разумеется, все будем рассматривать в следующих статьях. По metasploit и burpsuite будут отдельные обзорные статьи с практическими примерами. Благодарю за отзыв!