Maltego. Инструкция и сбор информации
Привет, друг. Продолжаем качать скилл по сбору информации. И если ты действительно хочешь шарить в OSINT (тем кто хочет шарить в информационной безопасности тоже будет полезно), то это пожалуй один из самых важных уроков. Потому что сегодня мы будем изучать Maltego, это действительно один из базовых инструментов, который можно проставить в один ряд с Nmap, например (инструкция по Nmap здесь). Хотя, справедливости ради, замечу что, иногда, её придется совмещать со сторонним софтом. Потому что в бесплатной версии некоторые нужные функции не работают, а платная стоит пол мешка денег.
Maltego — это мощная утилита, которая умеет делать много нужного и полезного. А именно собирать и показывать в удобном виде, кучу разнообразной информации. В частности собирать информацию о различных объектах в сети, таких как сайты, аккаунты, IP адреса, домены и т.д., находить связи между всем найденным и представлять, всё это в удобном графическом виде.
Установка и настройка Maltego
Скачать Maltego можно с официального сайта https://www.paterva.com/, а в таких дистрибутивах как Kali или Parrot она уже установлена. Для того чтобы использовать Maltego, надо на этом же сайте создать себе аккаунт.
После запуска появится окно выбора версий и здесь нужно выбрать версию Free (ну или другую если ты, вдруг, дочь/сын олигарха). Ну а версия CaseFile — это оффлайн версия для визуализации связей, без возможности запуска трансформаций. Она нас сегодня интересовать не будет, да и разобраться с ней не сложно.
После нажатия кнопки «Run» нужно будут войти в аккаунт (тот самый что мы создали на сайте https://www.paterva.com/), потом все время давим кнопку далее до появления стартового экрана.
И вот тут мы столкнемся с первым минусом бесплатной версии. А именно — в Maltego установлены только базовые наборы трансформаций (модули), а остальные нужно доставить в ручную, при этом получая API на соответствующих сайтах.
Модули (трансформации) Maltego
CaseFile Entities — этот модуль включает в себя все сущности из версии CaseFile. Нам может быть полезно благодаря возможности работать с метаданными.
Blockchain.info — отслеживает и визуализирует связи и транзакции между кошельками в блокчейн сети bitcoin и в сети Ethereum.
CipherTrace — модуль для отслеживания транзакций в криптовалюте, и построения цепочек связей между различными криптокошельками. Может быть полезен для попыток деанонимизации владельца кошелька. Для использования бесплатной версии, нужно зарегистрировать аккаунт здесь.
Have I been Pwned? — проверяет были ли взломан целевой сайт, электронная почта или аккаунт. Ищет в слитых базах скомпрометированный пароль.
Hybrid-Analysis — позволяет взаимодействовать с ресурсом Hybrid-Analysis, это что-то типа Virus Total, для использования необходимо получить API-ключи, для этого нужно зарегистрировать аккаунт https://www.hybrid-analysis.com/signup
PassiveTotal — добавляет дополнительные трансформации для изучения доменов, данных организаций, электронной почты с использованием RiskIQ. Для подключения нужен API. Чтобы его получить регистрируемся на сайте https://www.passivetotal.org и в настройках получаем API. Бесплатная версия ограничена 25 запросами в день, не густо, но лучше чем ничего.
PeopleMon — позволяет искать данные пользователей по базам InGrav PeopleMon, также работает через API, для получения ключа, нужно зарегистрироваться ЗДЕСЬ, и ключ будет отправлен на электронную почту. Для бесплатного тарифа есть лимит на 100 запросов.
Shodan — позволяет использовать возможности поисковика Shodan. Также нужен API, для его получения регистрируемся на https://www.shodan.io/ и в правом верхнем углу жмем «Show API Key»
Social Links CE — позволяет искать данные людей и компаний, используя базы ZoomEye, Shodan, SecurityTrails, Censys, Rosette, Skype, Documentcloud, Social Links. А также добавляет возможности поиска регистрационных данных компаний по открытым базам Евросоюза и офшорных зон.
ThreatMiner — добавляет трансформации использующие возможности https://www.threatminer.org/, позволяет анализировать и собирать информацию о доменах, IP, DNS, e-mail, а также выявлять вредоносное ПО.
ZETAlytics Massive Passive — позволяет находить историю изменения IP адресов, искать связи между IP и доменами, электронными почтами и доменами, NS и доменами, а также искать регистрационные данные, в том числе учитывая историю изменений. Для использования требуется API, чтобы его получить регистрируемся по ссылке.
Инструкция по Maltego
После установки всех нужных модулей, можем переходить непосредственно к использованию Maltego. Для этого в левом верхнем углу жмем кнопку «New» и можно просто нажать Ctrl+T.
У нас откроется новое рабочее пространство в котором мы и будем дальше работать.
В верхней части экрана находится панель управления. Здесь можно менять настройки, изменять способ отображения информации, сохранять/загружать проекты, управлять трансформациями и внешним видом. Вообщем подстраивать работу Maltego под свои задачи и желания.
Слева находится палитра объектов. Оттуда мы будем брать различные объекты, которым будем присваивать определенные значения, то есть ту информацию которую мы знаем. Именно к этим объектам мы будем применять трансформации для получения нужной нам информации.
В самом центре находится окно графиков. Именно это и есть основная рабочая область. Здесь мы будем проводить основную массу манипуляций и здесь будет отображаться результат проведенных трансформации и рисоваться связи между различными объектами.
Под ним находится консоль вывода. Здесь будет отображаться лог выполнения каждой операции и информация о ошибках если такие будут возникать.
Справа расположено три окна:
Overview — это миниатюра окна графиков. Позволят видеть общую картину, а если график достаточно большой, то быстро по нему перемещаться. Там же есть вкладка Machines — в ней отображается ход выполнения трансформаций.
Detail View — отображается подробная информация о текущем (выделенном) объекте.
Property View — это атрибуты текущего (выделенного) объекта, здесь же их можно редактировать.
OSINT с Maltego
С внешним видом программы мы познакомились. Теперь можно переходить к её использованию и разбираться что она может.
Maltego имеет огромное количество функций, разбирать их все в рамках одной статьи нет никакого смысла. Да и размеров тогда эта статья будет не реальных, правильнее будет объяснить принцип работы на наиболее актуальных примерах.
Одним из самых распространенных вариантов использования Maltego является исследование и получение информации о сайтах. Этим мы и займемся. Потому что так будет проще всего понять как работать в этой программе.
А тренироваться мы будем на примере какого-нибудь говно-сайта который рекламирует себя через спам рассылки.
Итак нам нужно создать стартовую точку, от которой мы будем начинать сбор информации. В нашем случае мы знаем домен, значит с него и начнем. В панели «Палитра» выбираем «Domain» и перетаскиваем в окно графиков. После чего надо клацнуть на него и в окне «Property View» в графе Domain Name ввести нужный нам домен.
Трансформации
Теперь можем переходить непосредственно к применению трансформаций. Тут стоит помнить важный момент. В зависимости от того какая информация нам нужна, мы можем либо применять трансформации по одной (либо группами по разделам). Это подходит если нужна какая-то конкретная информация и мы точно знаем что ищем. Либо Maltego позволяет применить наборы трансформаций. Они называются Machines. Это более подходит для анализа общей картины и выбора направления для дальнейшего исследования. Какие Machines доступны можно посмотреть в соответствующей вкладке на панели управления, нажав кнопку «Manage Machines».
Чтобы применить какую-либо трансформацию, либо запустить Machines нажимаем правой кнопкой мыши на нашу цель на графике и видим меню трансформаций.
Сами трансформации распределены по разделам. Если ты устанавливал модули, то будет как на скрине, если нет, то будет разделы только из списка «PATERVA CTAS CE».
PATERVA CTAS CE
Ну и раз у нас в наличии домен, то логично для начала узнать чей это домен. Переходим в пункт меню «PATERVA CTAS CE» и видим подменю «Domen owner detail». Тут мы тоже можем зайти в это подменю и применить по отдельности каждую трансформацию. Либо нажать на на кнопку старта и применить весь раздел, что мы и сделаем.
В результате мы видим регистрационные данные домена. Как видишь здесь и телефон и адреса почты, и геопозиция. Как видишь одним действием мы уже существенно расширили наши знания об объекте. Теперь при желании, мы можем поработать с полученной информацией. Например проверить есть ли найденные телефонные номера на каких-либо других сайтах, регистрировались ли на них другие домены, просто прогнать их через поисковик или попытаться найти связанные с ними адреса электронной почты.
Для этого давим правой кнопкой на номер и применяем весь раздел «PATERVA CTAS CE» (можно применить модули Social Links CE и PeopleMon чтобы поискать его в телефонных базах и соцсетях). Точно также мы можем провести поиск по адресу электронной почты. Причем мы сразу можем проверить его по базам скомпрометированных адресов (вдруг повезет), поискать его упоминания на других сайтах, либо если он указывался при их регистрации, а также проверить по социальным сетям, а найдя аккаунт в какой-нибудь соцсети продолжить уже поиск по этому аккаунту.
В общем, как видишь, тут круг поиска можно расширять практически до бесконечности, а потому вернемся к домену.
DNS from Domain
Следующая группа трансформаций, которая может быть нам интересна, это поиск по DNS. А потому применим весь раздел «DNS from Domain»
Итак что мы видим: сайт который использует домен, DNS записи как домена так и поддоменов, ns-записи и mx-записи. Кстати мы теперь, например, знаем ftp-сервер сайта, что полезно если наша цель не только сбор информации. Но давай для примера применим трансформации к самому сайту.
Здесь мы увидели какие ссылки на другие сайты есть на изучаемом ресурсе, получили ещё один адрес электронной почты, узнали IP адрес сайта. А также узнали какие технологии применялись на сайте. Так, например, в рассматриваемом нами случае, видно что сайт создан на WordPress, а также видно какие плагины установлены. Будь мы злобными хакерами это была бы крайне ценная для нас информация. Ну и будь мы хакерами мы ещё запусти бы трансформации на IP и узнали бы какие ещё сайты расположены на этом IP. А также на каком хостинге он находится. Что тоже крайне полезная информация. Ведь если взломать целевой сайт не получится, можно попробовать взломать какой-то другой сайт на хостинге, ну или, на крайняк, сам хостинг и получить доступ к нужному сайту.
Но мы не злобные хакеры, а потому идем дальше. Если вернуться к домену, то мы можем просканировать его на предмет наличия e-mail адресов как на самом сайте, так и в записях whois. А также, используя поисковые машины, проверить наличие на сайте файлов или документов. Также мы можем применить трансформации к name server сайта. И посмотреть другие сайты которые тоже используют это ns.
URL
Теперь давай посмотрим, что будет если применить трансформации к URL сайта. Для этого в панели «Палитра» находим значек URL. Тянем его на график, вписываем нужный нам URL и применяем к нему все трансформации.
Как видишь мы получили большую часть информации которая у нас была. Но кроме этого Maltego нашла название организации, чей сайт. А самое главное подгрузил картинки с него. И ты наверняка знаешь, что у картинок может быть такая интересная штука как метаданные. И Maltego с радостью их для нас выгрузит. Собираем картинки в кучу, выделяем все сразу, жмем правой кнопкой и выбираем «To Exif Info». В выбранном мной примере на картинках никаких метаданных не было. Но это не означает что их не будет на том сайте, который будешь изучать ты. Поэтому в любом случае стоит проверить.
Сохранение результатов
После того как мы получили всю интересующую нас информацию, её можно сохранить. Переходим во вкладку Import/Export в панели управления. И импортируем график в удобный для себя вид. Либо как рисунок, либо в таблицу или pdf. Тут уже кому как удобней. Как вариант можно сохранить график в формате понятном Maltego, что бы вернуться к нему позже.
Вообщем я не вижу смысла растягивать эту статью и показывать все возможные трансформации. Потому что принцип их применения похож. Смысл в том что с каждым найденным объектом можно выполнить определенный набор трансформаций для получения дальнейшей информации. И так до тех пор пока не найдешь то что нужно. Тут, как и везде в принципе, нужно немного попрактиковаться и через время будешь на автомате получать нужную информацию.
Ну что, сегодня ты получил ещё +1 к скиллу сбора информации. Главное не забывай возвращаться к нам, чтобы продолжить прокачку.
Твой Pulse.