Поиском, сбором и анализом информации, полученной из общедоступного источника, занимается OSINT (англ. Open source intelligence). Основная цель — найти информацию, ценную для злоумышленника или конкурента. Сбор информации во многих отношениях является ключевым элементом теста на проникновение. То, насколько хорошо оно было проведено, может повлиять как на эффективность пентеста в целом, так и на эффективность отработки отдельных векторов атак (социальная инженерия, брутфорс, атаки на веб-приложения и т. д.). Что касается кибербезопасности / пентестинга, OSINT чаще всего используется для сбора общедоступных данных о компании, и это касается не только информации об адресах электронной почты ее сотрудников. Не менее интересной будет информация о:
-
DNS-именах и IP-адресах;
-
доменах и субдоменах, зарегистрированных за компанией;
-
фактах компрометации почтовых адресов;
-
открытых портах и сервисах на них;
-
публичных эксплойтах для найденных сервисов;
-
конфиденциальных документах;
-
имеющихся механизмах безопасности и т.д.
Сегодня посмотрим с помощью каких инструментов и какую информацию можно найти в открытых источниках на примере нашей компании.
Консольные инструменты
TheHarvester
В состав TheHarvester входит целый фреймворк для сбора email адресов, имён субдоменов, порталов, виртуальных хостов, открытых портов/банеров и имён сотрудников фирмы из различных открытых источников. Позволяет производить как пассивный поиск по нескольким поисковым системам: google, yahoo, bing, shodan.io, googleplus, linkedin и т.д., так и активный — например, перебор имен субдоменов по словарю.
Используя различные поисковые источники можно получить различный результат. Например, при использовании поисковой системы Yahoo:
А при использовании Google:
Dmitry
Dmitru – это еще один консольный инструмент для поиска нужной информации об интересующих хостах. Базовая функциональность может записывать возможные поддомены, адреса электронной почты, информацию о доступности, сканирование TCP-портов, поиск whois и многое другое. Функционал достаточно обширен, но по возможностям и скорости обнаружения открытых портов все же уступает предыдущему инструменту, но это не мешает их совместному использованию. Однако для таких вопросов необходимо использовать информацию из разных источников, чтобы повысить надежность.
# dmitry -winsepfb pentestit.ru
Для того чтобы получить максимальный объем информации о домене необходимо указать все ключи. Помимо прочего, инструмент будет сканировать порты, но в ограниченном диапазоне, поэтому для этих целей лучше использовать Nmap.
Nmap
Nmap («Network Mapper») – это программа с открытым исходным кодом, которая предназначена для исследования сети и аудита безопасности в ней. Он был разработан для быстрого сканирования больших сетей, хотя хорошо работает для одиночных целей. Это вечная классика и первый инструмент, использованный в пентесте. Его функционал достаточно обширен, но в нашем случае потребуется только определить открытые порты, названия запущенных сервисов и их версии.
# nmap -v pentestit.ru -sV -Pn
Узнав открытые порты запустим тот же Nmap, но уже будем использовать различные группы скриптов, которые помогут обнаружить возможные ошибки конфигурации:
# nmap -sV pentestit.ru --script "version, discovery, vuln, auth" -p22,80,443 -Pn
Когда вы запустите эту команду, Nmap запустит все сценарии, собранные в этих группах, для получения информации из каждой группы: получение расширенных выходных данных из версии службы, поиск расширенной информации о сервере, поиск общедоступных уязвимостей и т. д. Эта информация также поможет определить возможные точки входа в периметр сети организации.
WhatWeb
У многих компаний есть свои сайты, которые тоже можно анализировать. WhatWeb определяет веб-сайты. Основная задача инструмента — ответить на вопрос, какие технологии использует веб-приложение. WhatWeb распознает веб-технологии, включая систему управления контентом (CMS), пакеты статистики / аналитики, библиотеки JavaScript и многое другое. В нем более 1700 плагинов, каждый из которых предназначен для распознавания одной вещи. Он также определяет номера версий, адреса электронной почты, идентификаторы учетных записей, формы веб-платформы, ошибки SQL и многое другое.
# whatweb -v pentestit.ru
TiDos
TiDos — это полноценная платформа, охватывающая все, от сбора исходных данных до анализа уязвимостей. В его арсенале 5 модулей, позволяющих искать информацию о цели в открытых источниках и искать некоторые уязвимости (но это еще не полноценный сканер уязвимостей). Поскольку нас интересует только сбор информации, мы рассмотрим только один раздел, содержащий около 50 модулей. Этот раздел позволяет собирать пассивные данные:
-
поиск email-адресов и прочую контактную информацию в Интернете;
-
информацию о домене (whois-информация);
-
информацию о конфигурации DNS;
-
список субдоменов;
-
список подсетей и т.д.
так и активный:
-
сбор баннеров;
-
проверка файлов robots.txt и sitemap.xml;
-
определение CMS;
-
определение альтернативных версий сайта путем обращения с различным параметром User-Agent;
-
поиск файлов типа info.php и его возможных вариаций и т.д.
SpiderFoot
SpiderFoot — это инструмент автоматизации OSINT. Он интегрируется со многими доступными источниками данных и использует ряд методов анализа данных для облегчения навигации по этим данным. SpiderFoot на самом деле не консольный инструмент. имеет встроенный веб-сервер с интуитивно понятным веб-интерфейсом. Позволяет собирать информацию о:
-
IP-адресах;
-
Домены/Субдомены;
-
Имена пользователей;
-
Телефонные адреса;
-
Проверка некоторых данных на предмет утечки и т.д.
Примеры результатов
Maltego
Maltego — довольно популярный инструмент для проведения OSINT-событий и построения отношений в виде графиков. Бесплатная версия может быть вполне достаточной для поиска информации, но помните, что для многих модулей, например для поисковой системы Shodan, вам необходимо получить ключи API для задействованных служб.
Пример результатов
По окончании можно можно софрмировать отчет в формате PDF для удобного просмотра найденной информации.
Пример отчета
Онлайн сервисы
Еще одним способом получения информации о целевой аудитории является использование онлайн-сервисов, которые позволяют собирать данные о целевой аудитории. Общая основа таких сервисов — osframework. Здесь собраны и классифицированы по разделам несколько инструментов. Кстати, он также предоставляет ссылки на полезные инструменты и структуры, относящиеся к определенной теме, например, TheHarvester или Recon-ng.
Поиск email
hunter – на сайте вводим наименование комании или ее домен и получаем список адресов сайтов, где эти данные фигурировали.
В качестве бонуса есть расширение для браузера, которое автоматически выполняет поиск связанных адресов электронной почты при посещении веб-сайта.
mailshunt — по аналогии с предыдущим сервисом указываем домен компании и получаем список найденных аккаунтов.
Найденные электронные адреса можно проверить на утечку на известном сервисе haveibeenpwned.com. Взломанные пароли не отображаются, но, по крайней мере, таким образом список адресов можно разбить на «чистые» и потенциально взломанные пароли.
Whois
who.is — вводим домен компании и в ответе получаем whois-информацию, DNS-записи и т.д.
2whois — помимо получения whois-информации сервис предоставляет онлайн-сервисы nslookup, dig, анализ DNS и многое другое.
Результат
crt.sh — еще один полезный и довольно простой в использовании сервис поиска субдоменов.
Также можно воспользоваться сервисом securitytrails.com для все того же поиска субдоменов.
hackertarget — инструмент аналогичен предыдущим, поскольку в своем арсенале использует инструменты с открытым исходным кодом, но в этом случае набор инструментов значительно расширен, что позволяет дополнительное использование, например OpenVas, Nmap, Nikto, WhatWeb и т. д.
Результат
dnsdumpster.com — умеет рисовать графы взаимосвязей и выгружать результаты в Excel, но имеет ограничение на выдачу только 100 субдоменов.
Google Dorks
Google Dork Queries (GDQ) — это серия запросов, используемых для идентификации страниц, проиндексированных поисковой системой. Одним словом, все, что неправильно скрыто от поисковых роботов. Вот небольшой список наиболее часто используемых команд:
-
site — искать по конкретному сайту;
-
inurl — указать на то, что искомые слова должны быть частью адреса страницы/сайта;
-
intitle — оператор поиска в заголовке самой страницы;
-
ext или filetype — поиск файлов конкретного типа по расширению
Комбинируя различные команды поиска, можно найти практически все, вплоть до логина / пароля администратора.
Возможно, где-то есть уже готовые запросы для поиска нужной информации?
pentest-tools — полезный ресурс для сбора информации, но в бесплатной версии есть много ограничений, таких как, 2 сканирования в день. При этом доступен бесплатный Google Hacking, где достаточно указать домен и выбрать из предложенных вариантов поиска. Результаты поиска отображаются в отдельном окне.
Иитоги
Тем не менее, инструментов для выполнения OSINT по-прежнему много, но в этой публикации мы перечислили самые популярные и самые востребованные. Собирая информацию, мы смогли найти достаточно данных, чтобы сделать вывод о наличии пробелов в сети организации и возможных точках входа в ее сеть. Регулярное выполнение таких действий позволит вам объективно оценить уровень осведомленности потенциального злоумышленника на другом конце Интернета.Первый шаг в пентесте — это сбор данных. Чтобы узнать подробности последствий их правильной работы, мы приглашаем вас в Pentestit Corporate Laboratories, где каждый может открыть для себя что-то новое в области информационной безопасности. Программа обучения охватывает методы тестирования на проникновение, современные сетевые уязвимости (SQLi, XSS, CSRF и т.д.) .Безопасный DNS, форензику со специальными инструментами (Volatility Framowork, Autopsy, Ftk и т. д.), Постэксплуатацию Windows / Linux и другое. Специализированные лаборатории дадут возможность закрепить полученные знания в процессе практики.