OSINT или как посмотреть на свою сеть глазами хакера
Добрый день! Сегодня я вам расскажу какую информацию об организации можно обнаружить в открытых источниках и как ей может воспользоваться потенциальный злоумышленник. Многие из вас наверняка слышали об OSINT (Open Source INTelligence, перечень мероприятий, направленный на сбор информации из открытых источников), который чаще всего используется для сбора информации о конкретном человеке. Но также OSINT можно использовать для поиска информации о конкретных организациях для оценки защищенности. Ведь согласитесь, полезно посмотреть, что о вас есть в открытом доступе и как вы выглядите со стороны потенциального злоумышленника.
Популярные ресурсы, где проходит сбор информации
Для проведения активного сканирования необходимо подписание NDA и согласование проведения работ, что естественно требует времени. В связи с этим необходимо использовать только данные, находящиеся в открытых источниках, не сканировать ИТ-инфраструктуру и соответственно не тратить человеко-часы на бюрократию.
Так что же можно найти в свободном доступе?
Наиболее подробно на этот вопрос отвечает osintframework.com, рекомендую ознакомиться для получения обобщенного ответа на поставленный вопрос.
Я же постараюсь выделить из обширного объема информации наиболее интересную для ИБ специалистов. Искать будем:
- Корпоративные почтовые адреса
- Факты компрометации почтовых адресов
- Субдомены, зарегистрированные за компанией
- IP-адреса и автономные системы компании
- Открытые порты и сервисы, находящиеся на них, а также подбор уязвимостей и эксплойтов для обнаруженных сервисов
- Скрытые директории сайтов
- Конфиденциальные документы
Чем же можно воспользоваться для поиска этой информации?
В интернете существует огромное количество инструментов для поиска почтовых адресов компании по доменам, например:
hunter.io — до недавнего времени инструмент был полностью бесплатным, но к сожалению времена меняются.
Расширение браузера Email Finder от Snov.io — на данный момент имеет огромный функционал в бесплатной версии и находит огромное количество доменных учетных записей, но надолго ли?…
theHarvester — собирает как почтовые адреса, так и субдомены, открытые порты, а также данные о виртуальных хоcтах. Предустановлен в Kali Linux.
Инструменты бывают как платные, так и бесплатные, выбор использования зависит от наличия желания/возможности платить за улучшенный функционал. Имеет смысл пользоваться несколькими инструментами одновременно так, как результаты они выдают разные. В конечном итоге имеем большой список почтовых адресов компании, который необходимо проверить на наличие скомпрометированных учеток.
Провести проверку можно на многим известном сервисе haveibeenpwned.com.
На выходе инструмент дает нам информацию в каких базах содержатся упоминания учетной записи, есть ли в этих базах данные по паролям, физическим адресам, номерам телефона и т.д.
Самих паролей тут мы не получим, но сможем разделить почтовые адреса на «чистые» и потенциально скомпрометированные.
Тут стоит отметить, что инструмент имеет платный API. Без него, конечно, можно проверить все почтовые адреса, но придется подавать их на вход по одному, что займет уйму времени. При покупке API (3,5$ в месяц, чисто символическая плата) получим возможность использовать его в различных скриптах и соответственно существенно ускорить и автоматизировать процесс анализа.
В дальнейшем можно воспользоваться ботом в telegram @mailsearchbot.
На вход даем ему потенциально скомпрометированные почтовые адреса, на выходе получаем пароли, использовавшиеся в связке с данным почтовым адресом. Стоит отметить, что далеко не для всех учеток удается найти пароли, но процент обнаружения большой. И опять же при наличии желании/возможности финансово поддержать разработчика можно получать полные данные, без скрытых звездочками символов, но к сожалению тут цена уже кусается.
Следующим этапом необходимо собрать информацию о субдоменах. Инструментов, позволяющих это сделать очень много, например:
theHarvester
dnsdumpster.com — умеет рисовать красивые графы взаимосвязей и выгружать результаты в Excel, но имеет ограничение на выдачу только 100 субдоменов.
pentest-tools.com — советую познакомиться с сайтом поподробнее, так как тут можно не только субдомены искать. В lite версии имеет ограничение на 2 сканирования в день, но легко обходится TORом)
Тут также имеет смысл комбинировать инструменты для определения наибольшего количества субдоменов. Зачастую в паре с субдоменом идет IP-адрес, который в дальнейшем можно скормить шодану (shodan.io) для получения списка открытых портов и сервисах, торчащих в интернете.
В дальнейшем можно подобрать уязвимости и эксплойты по определенным версиям сервисов, используя такие ресурсы, как:
cvedetails.com — большая пополняемая база CVE по сервисам и их версиям. Тут могут возникнуть некоторые сложности с поиском необходимых сервисов так, как они повторяются (например существуют две разные страницы сервиса Microsoft IIS с разными уязвимостями).
exploit-db.com — большая пополняемая база эксплойтов. Тут стоит обратить внимание, что есть подтвержденные администрацией сайта эксплойты и не проверенные.
В данных шодана нам также интересна принадлежность ip-адреса какой-либо автономной системе. Проверка производится в различных Whois-сервисах, которых также большое количество. По большому счету нет никакой разницы с каким инструментом работать, поэтому продемонстрирую те, на которых остановился я:
bgp.he.net — топорно выглядит, но показывает данные по любым автономным системам.
ididb.ru — в большей степени заточен на сбор информации об автономных системах Рунета.
В случае обнаружения автономной системы, принадлежащей компании имеет смысл прогнать все ip через shodan и собрать как можно больше информации по версиям сервисов.
Для анализа определений на каких технологиях построен сайт можно использовать расширение браузера Wappalyzer. Зачастую инструмент определяет версии и соответственно вы также можете подобрать для них уязвимости.
Переходим к заключительному этапу — поиск скрытых директорий и файлов сайта. Тут нам пригодятся:
- Google Dorks
- DirBuster
Google Dork Queries — это хитрые запросы к поисковикам, которые помогают пролить свет на общедоступные, но скрытые от посторонних глаз данные. На просторах интернета достаточно информации как «правильно» составлять запросы поисковику для получения необходимой информации. Андрей Масалович наглядно показал как это делается.
В свою очередь DirBuster это инструмент поиска скрытых директорий и файлов, которые забыли удалить из общего доступа или добавили туда по ошибке. В нем имеется несколько встроенных словарей для осуществления поиска. Рекомендуется использовать словарь directory-list-2.3-medium для оптимизации соотношения затраченного времени к выхлопу.
При использовании этих инструментов придется проанализировать большое количество информации, но зачастую старания вознаграждаются.
Популярные курсы/книги для обучения
- Курс видеоматериалов для ознакомления с OSINT
- Сертифицированный курс по OSINT и конкурентной разведке
- Советую посмотреть в YouTube записи выступлений Масаловича Андрея Игоревича, преподавателя предыдущего курса. Он настоящий профессионал своего дела, расскажет много интересного. Также советую ознакомиться с его сайтом, на котором вы можете найти большое количество видеоматериалов и книг по данной тематике
Топ — 5 проблем, которые нам удается обнаружить в рамках OSINT-а
На моей практике удавалось:
- Получить возможность управлять сайтом от имени администратора поскольку была возможность провалиться в директорию, которая минует авторизацию администратора. Естественно я там ничего трогать не стал, но еслиб это был не я, а потенциальный злоумышленник? Закрывать нужно такие директории.
- Обнаружить торчащие в интернет базы данных, которые к тому же были очень древние и крайне «дырявые». Подбор эксплойта под такие базы — задача крайне простая. Не нужно вытаскивать БД наружу.
- Обнаружить RDP, FTP, SSH и NTP сервисы, доступ к которым из неограниченного пула адресов нежелателен. Тут вырисовывается проблема простых паролей для учетных записей, а brute force никто не отменял. Не нужно выставлять такие сервисы наружу, если нет явной необходимости…
- Обнаружить конфиденциальные документы. Например документы, относящиеся к организации внутриобъектового режима, находящиеся в открытом доступе — не лучшая затея.
- Подобрать актуальные пароли от почтовых адресов. Я сам не проверяю актуальность обнаруженных паролей, но иногда после ознакомления с отчетом сотрудники компании обращаются с вопросом: что же делать, если пароль действительно актуальный? В таких случаях его естественно нужно менять, а так же менять пароли на всех сайтах, где регистрация проходила от данного почтового ящика и надеяться на лучшее. А вообще меняйте пароли почаще.
Заключение
Итак, мы видим, что информация, находящаяся в открытых источниках может стать плацдармом для проведения атаки на корпоративную инфраструктуру. Необходимо периодически проверять как организация выглядит со стороны потенциального злоумышленника и по возможности скрывать данную информацию.
Что делать, если нет возможности провести OSINT самому?
Мы можем провести OSINT для Вашей организации совершенно бесплатно, обращайтесь.
Если данная тематика вам интересна, то следите за обновлениями в наших каналах (Telegram, Facebook, VK, TS Solution Blog)!