Этичный хакинг. Часть 8
Это заключительная часть нашего обзора, и сегодня мы рассмотрим методы и средства для сбора информации или OSINT.
OSINT (open-source intelligence) — отдельное направление в хакинге, которое включает в себя сбор информации из открытых источников.
В этой статье мы наглядно покажем, как и с помощью чего черные хакеры собирают информацию из открытых источников. А также разберем, какие инструменты в Kali Linux в этом помогут.
Первые сведения об организации, которые мы добудем с помощью обычного браузера, — ее название, род деятельности и адрес сайта.
Инструменты которые нам помогут в сборе информации, — WHOIS, TheHarvester, SpiderFoot и recon-ng. Все они есть в составе Kali.
WHOIS — простой и мощный инструмент, позволяющий по доменному имени либо публичному IP адресу получить подробную информацию о владельцах и о владении доменами. Запись включает в себя всю контактную информацию, связанную с человеком или компанией, зарегистрировавшей доменное имя.
TheHarvester — мощный фреймворк, собирающий e-mail адреса, имена субдоменов, виртуальных хостов, открытых портов/банеров и имён сотрудников компании из открытых источников.
SpiderFoot — инструмент с открытым исходным кодом для автоматизированного сбора информации. SpiderFoot пригодится в этих сферах:
- Тестировщикам на проникновение, SpiderFoot автоматизирует стадию сбора информации по цели.
- Определит, какая информация о вашей сети/организации доступна для всех. Эта информация в плохих руках может представлять значительный риск.
- Для сбора информации о подозрительных вредоносных IP, которые вы могли видеть в ваших логах или получили через каналы разведки угроз.
Recon-ng — это фреймвок веб-разведки на Python, включает в себя независимые модули, взаимодействие с базой данных, удобные встроенные функции, интерактивная помощь и завершение команд. Recon-ng позволяет проводить разведку и сбор информации быстро и тщательно.
Сбор информации
Переходим к практике и первый инструмент, которым мы будем пользоваться, — whois. Ему мы просто передадим параметр доменного имени (для примера возьмем blahblah.su).
Поиск данных показал нам результаты: Полное наименование организации, контактный телефон сотрудника, на которого зарегистрировано доменное имя (администратора домена), его email. Здесь имеется информация о хостинге (jino.ru) и регистраторе домена верхнего уровня (.su)
Теперь поработаем со следующим инструментом theHarvester. Для запуска проверки необходимо указать параметр системы, через которую будет осуществляться сбор данных. Некоторым нужны API ключи, но мы рассмотрим те, что работают без API.
Для получения информации используем команду:
theHarvester -h
Для получения информации об IP адресах и связанных доменах применяем команды dnsdumpster, rapiddns urlscan. Введем поочередно команды:
theHarvester –d blahblah.su –b dnsdumpster theHarvester –d blahblah.su –b rapiddns theHarvester –d blahblah.su –b urlscan
Программа нашла нам все ресурсы компании, которые связаны с доменом: почтовый сервер, iBank клиент, гейт vmware horizon и публичные IP адреса.
Теперь переходим к инструменту SpiderFoot. Его главное отличие от других — SpiderFoot дает возможность работать через веб-интерфейс, что возможно будет поприятнее любителям графических оболочек.
Запускаем наш SpiderFoot как веб-сервер на адресе машины с Kali с помощью команды:
spiderfoot -l 127.0.0.1:8080
Теперь перейдем по ссылке в поле browse to
http://127.0.0.1:8080/
Перед началом нового сканирования необходимо перейти во вкладку New Scan
Тут задаем имя цели (наименование организации либо ее доменное имя) и публичный IP адрес (либо целевой домен). Ниже у нас есть выбор типа сбора данных:
По режиму использования:
All — режим, при котором работают все модули spiderfoot, чтобы получить все возможные данные о цели. Режим работает очень медленно и находит много лишней и ненужной информации, поэтому используется редко.
Footprint — режим, который подойдет для классической разведки и сбора данных о периметре сети, связанных идентификаторах и прочей информации. В данном способе задействуется большое количество различных веб-сканеров и поисковых систем.
Investigate — этот режим подходит, когда есть подозрение, что целевой адрес/домен является вредоносным, но нам нужно собрать дополнительную информацию о нем. Преимущество — работа с запросами черных списков.
Passive — режим пассивного сбора информации из открытых источников. Используется тогда, когда необходимо собрать минимально полезные данные не применяя агрессивное сканирование.
По запрашиваемым данным:
Включает в себя большой список элементов. Мы перечислим лишь некоторые параметры: IP адреса, доменные имена, почтовые адреса, данные о компании (физический адрес, номера телефонов и т.д.).
По подключаемым модулям:
Некоторые модули требуют API ключ сервиса (например, shodan, emailrep, focsec и пр.) для работы. Но большая часть работает без ключа. При желании можно зарегистрироваться на таких сервисах, как shodan.io, и получить API бесплатно.
Сейчас выбираем режим сканирования Footprint. Для этого задаем имя цели и укажем домен (blahblah.su). После этого выбираем Run Scan Now и ждем результаты.
А результат мы получаем следующий:
Кликаем дважды по нужному пункту и переходим в Linked URL - Internal.
И здесь мы обнаружили CMS 1С Битрикс, на базе которой работает сайт компании. При этом путь к стандартному админресурсу оказался открытым:
www.blahblah.su/bitrix/
Для удобства работы мы можем сменить режимы отображения на Browse
С этим разобрались. Теперь переходим дальше к инструменту recon-ng. Из всех рассмотренных инструментов, recon-ng единственный не содержит никаких модулей в составе. Это значит, что сперва нам нужно установить все модули для полноценной работы фреймворка и создадим рабочую область.
Запускаем фреймворк через команду в консоли запуска самого фреймворка достаточно прописать в консоли:
recon-ng
Для получения информации о доступных опциях
help
И обновляем базу marketplace командой:
marketplace refresh
А после устанавливаем все доступные компоненты с помощью команды:
marketplace install all
Как только установка завершится, мы создаем новую рабочую область и базу данных для хранения информации по домену. Прописываем help для отображения доступных команд. Затем создаем новую область, используя команду:
workspaces create blahblah
А после создаем базу доменов blahblah.su
db insert blahblah.su
Все готово для работы. Загружаем список доступных модулей для работы с доменами командой:
modules search domain
modules load recon/domains- hosts/brute_hosts
run
В результате мы получаем такие же данные, что и при работе с theHarvester. Для примера перейдем по одному из публичных адресов и попадем на страницу приложения iBank.
Теперь поработаем с другим модулем, возвращаемся в предыдущее меню командой:
back
recon/domains-hosts/hackertarget
Проверяем, что он сможет найти.
Что у нас получилось в итоге: нам удалось найти информацию обо всех публичных ресурсах организации (веб-сайт, приложение iBank, адрес гейта vmware horizon), а также информацию о некоторых сотрудниках, их адреса корпоративной почты, номера рабочих телефонов. Этих данных будет достаточно для проведения сценариев социальной инженерии. Теперь вы знаете, как проводить поиск и сбор информации из открытых источников с помощью инструментов Kali.
🔥 Ставь реакцию, если понравилась статья
⚡️Остались вопросы? Пиши - @golden_hpa