Привет, Хабр!

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

В киберпространстве —как в армии. Хорошо, когда на границах вырыты окопы, дежурит артиллерия и ПВО, но без разведки непонятно, куда и чем противник будет атаковать. В цифровом мире базовая военная стратегия в целом не отличается. Разведка важна и нужна, чтобы быть готовыми и собирать данные, которые собирают злоумышленники о вас и вашей инфраструктуре. В статье разберем, как создать направление киберразведки(OSINT) в компании.

С чего зародилась идея создания направления OSINT

В наше время стал мейнстримом тренд на защиту персональных данных и всякой конфиденциалки в компании. Запрос на поиск источников утечек и их закрытия очевиден. Самое сложное — расставить приоритеты или ответить на вопрос «Что будем искать?» Если открыть внутренние документы любой компании, то сведений, составляющих какую-либо из тайн (персональную, конфиденциальную, коммерческую) — большое количество. Важно выбрать те, которые являются самыми важными для контроля, утечки которых реально можем находить и устранять.

Путем расстановки приоритетов и реальных возможностей мы выделили основные направления для OSINT:

Нахождение данных в открытом доступе:

  • Фрагменты исходного кода компании

  • Секреты (ключи, пароли, токены)

  • Обнаружение зловредного кода, нацеленного на ресурсы компании

  • Обнаружение зловредных сайтов (фишинговые сайтов)

Содействие в расследовании инцидентов:

  • Получение дополнительной информации о людях, компаниях, интернет ресурсах

  • Поиск дополнительной информации о атакующих

Цели расставили, направления сформировали. Что дальше?

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

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

С секретами проще. Нашли API, приватный SSH ключ или учетные данные в коде или утечках? Срочно меняем!

Касательно зловредного кода, нацеленного на ресурсы компании. В ИБ есть направление, называемое Threat Intelligence, или разведка угроз. Стоит отметить, что поиск можно разделить на установление публичных мисконфигураций сервисов, уязвимостей ПО (на которое уже написаны эксплойты) и на установление информации о планировании, реализации кибератаки на ресурсы компании.

Например сообщение в ТГ о подготовке к DDOS атаке наших ресурсов
Или сообщение о уже совершенном взломе корпоративной почты

В любом случае логично применить превентивные меры. Залатать уязвимость, подключить на время атаки дополнительные средства защиты антиDDOS и так далее. Здесь как на фронте. Все не защитишь, но зная, в какую брешь обороны полезет враг, проще обороняться.

С фишинговыми сайтами еще проще. Есть нарушение — собираем доказательства и пишем запрос на блокировку вышестоящему провайдеру.

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

Как выбрать инструменты OSINT

Каждый разведчик сталкивается с одной и той же проблемой. Инструментов OSINT великое множество, сложно остановиться на чем-то действительно хорошем. Здесь два пути: пробовать все или выбирать по рекомендации.

На момент создания направления не было гайдов по инструментарию OSINT, поэтому нам пришлось формировать реестр более-менее рабочих сервисов и тулз, сортировать сервисы по типам информации, которую они предоставляют (например, утечки паролей, корпоративные почты, мисконфигурации DNS). Как оказалось, полученный реестр из 50+ сервисов скорее неудобный в использовании, нежели эффективный. Второй путь — довериться авторитетным источникам и выбрать по 2-3 инструмента для решения задачи.

Проверять полученные данные, с помощью альтернативных источников, необходимо всегда!

В свою очередь представляем список основных тулз, которые можем посоветовать и которые мы использовали под заявленные направления поиска.

Фрагменты исходного кода компании

Здесь дешевых решений нет. Из коммерческого рассматривали https://leak-search.com. Работает по принципу мониторинга репозиториев по ключам. Вводим упоминание домена, выбираем ключи, которые будут искаться в коде, и запускаем. Через некоторое время на почту будут приходить сработки либо формироваться отчет в веб-интерфейсе. Тулза рабочая, находит минут через 20, после оставления «закладки». Но цена подойдет только для больших компаний.

Веб интерфейс, нужно выбрать паттерны, запустить задачу и ждать профит

Учитывая цену на коммерческого решение, мы пошли путем разработки своего. Да, получилось не так «юзерфрендли» и эффективно, однако поиск по ключам он и есть поиск по ключам. Применим формулу Google API + дорки + сборка Jenkins, автоматизирующая процесс и за пол года разработки рабочий собственный вариант уже есть. Я понимаю, что «путь самурая» не для всех, но в целом задача вполне реальная.

Секреты (ключи, пароли, токены)

Секреты в коде находит тулза, описанная выше. Здесь поговорим о секретах сотрудников, а именно логинах и паролях от корпоративных аккаунтов. Это самые критичные данные для разведки, ведь зачем что-то взламывать, если ключи уже в открытом доступе? О никаких open-source решениях здесь и речи идти не может, ведь информация стоит денег. Однако сэкономить все же можно — с естественной потерей качества поиска.

Начнем с эффективных решений. Самым лучшим, на наш взгляд, стало Threat Intelligence от Group-IB.

Веб интерфейс визуально красивый и с ним хоть фильм про хакеров снимай.

Основные функции сервиса: 

  1. Атрибуция злоумышленников. По различным паттернам (хешу, тактике, виду малвари). Даже есть досье на хак-группы. 

  2. Инструмент графового анализа. Граф и зависимости для разборов инцидентов. Как у Maltego. 

  3. Детектирование скомпрометированных данных (БД, учетки). 

  4. Данные из Darkweb (упоминания на даркнет-площадках). 

  5. Обнаружение фишинга и реагирование (поиск фишинговых сайтов). 

  6. Исследование вредоносного ПО и уязвимостей — как БД, так и отчеты по исследованию малварей. 

  7. Персонализированный ландшафт-угроз. 

  8. Разбор инцидентов. Специалисты GB могут помочь со сбором дополнительных данных о инциденте, провести расследование самостоятельно

Если вкратце, то это полноценный сервис, в рамках которого специалисты по киберразведке Group-IB оказывают OSINT-услугу компании. Клиенту требуется лишь назвать свои DNS-имена и ждать, как веб-дашборд будет пополняться находками. А если потребуется помощь специалиста в интерпретации данных, то создать тикет. Во время нашего тестирования сервис нашел утечки не только среди крупных общеизвестных баз (dehashed.com, haveibeenpwned.com, leakcheck.io), но и на хакерских форумах в дарквебе, причем часть из находок была еще актуальна.

Что же не так с этим решением, ведь, по сути, он может закрыть все задачи OSINT? Ответ прост: цена на подписку. Сумма формируется индивидуально для каждой компании, но в среднем за нее можно приобрести средненький мерседес.

Дешевле обстоят дела с сервисом защиты бренда BI.ZONE Brand Protection .

Веб интерфейс. Дашборд появился во время тестирования, то есть продукт в стадии развития

Сервис предоставляет в режиме мониторинга информацию об утечках, фишинговых ресурсах и упоминаниях компании на различных площадках (VK, ТГ, OK, дарквебе). Функционал попроще, находок меньше и цена, соответственно, ниже. Как за новый среднеразмерный кроссовер.

Есть и другие подобные сервис-услуги по TI, но мы их не тестировали и оценить не можем. Однако если бюджет позволяет, можно смело брать любой из них. Тем более если в штате нет специалиста по OSINT.

Поскольку в компании специалист по OSINT есть (в лице меня), то выбор пал на профессиональный инструмент разведчика — Lampyre. Почему не Maltego? Дело вкуса. Тем более Lampyre мне посоветовал Андрей Масалович (Кибердед) на PHDays 2022 как более удобный.

Из опыта использования оказалось, что интерфейс Lampyre действительно приятнее. В один клик можно собрать данные из нескольких источников (в том числе и сервисов, реестр которых формировали ранее), затем сделать выборку, например, по найденным корпоративным почтам и запросить утекшие по ним пароли.

Из запрошенной информации по DNS можно выделить обнаруженные корпоративные учетки и, например, отдельно запросить утекшие пароли

Тулза стоит дешевле коммерческих сервисов TI, но требует своего специалиста OSINT в штат. На момент покупки нам она обошлась в районе 17 000 рублей в год. Разведчик в штате, соответственно, уже имелся.

Бесплатный вариант поиска корпоративных учеток есть. Можно зайти на ресурс haveibeenpwned.com и бесплатно оформить подписку на утечки, подтвердив с корпоративной почты вида security@domain.ru, что домен вам принадлежит. После чего периодически на вашу почту будет приходить рассылка со слитыми корпоративными логинами, которые попали в утечки на этом ресурсе. При таком варианте не получить слитые пароли. Да и об актуальных данных речи не идет.

Maltego имеет версию комьюнити, однако API большинства сервисов придется покупать. По моему мнению, lampyre.io дешевле выходит.

Обнаружение зловредного кода, нацеленного на ресурсы компании

Самое обширное направление для разведки. Постановка цели подразумевает как поиск публичных уязвимостей в своей инфраструктуре (которые известны и на которые есть импакт), так и сам код, написанный злоумышленниками, например СМС-бомберы, эксплойты.

Для реализации задачи нужно много аналитики. Сервисы Threat Intelligence этот вопрос решают, но за ваши деньги. Самостоятельно поиском заниматься можно, но зная, что и где искать. Сильно упрощает эту задачу инструмент SpiderFoot (https://www.spiderfoot.net)

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

Важно отметить, что это комбайн, позволяющий собирать и коррелировать информацию из обширного количества источников. Помимо предустановленных, можно подключить с помощью API еще 80, среди которых есть такие сервисы, как shodan.io, censys.io, intelx.io. Есть open-source-версия под Windows и Linux, однако облачная версия позволяет заводить инциденты и оперативно собирать информацию о цели. К тому же облачный сервис быстрее и стабильнее работает (на субъективный взгляд). Стоит порядка 45 000 рублей в год. Если учесть, что сервер нам нужен будет круглосуточно, то можно легко посчитать, что в целом облачный сервис стоит того.

Хорошо решают задачу сервисы типа Attack Surface, например от Group-IB.

Дизайнеры постарались

На дашборде видны основные проблемы на активах сетевой инфраструктуры и оценка безопасности.

Из бесплатных хорошо себя зарекомендовал веб-сервис securityscorecard.com.

Выглядит попроще, зато бесплатно.

Сервис рекомендую. В платной версии позволяет иметь 24/7-мониторинг, но и бесплатной хватит, чтобы раз в 2 недели проверить состояние активов компании.

Обнаружение зловредных (фишинговых) сайты)

Еще раз упомяну решения Threat Intelligence (Group-Ib, BI.ZONE), которые способны не только найти фишинговый сайт, но и помочь его заблокировать. Как говорится, любой каприз за ваши деньги.

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

Мы автоматизировали работу утилиты с помощью сборки Jenkins, которая формирует отчет только по новым сработкам, делая dif с предыдущим. Получилось вполне эффективно.

Из опыта работы с тулзой стало ясно, что генерируемый список не идеален и стоит еще искать по доркам, потому как доменное имя зловредного сайта может быть сильно искажено и dnstwist не сумеет его сгенерировать.

Содействие в расследовании инцидентов

Сюда включаем все тулзы предыдущих пунктов и добавляем поиск по личности, который хорошо делают, помимо Lampyre, телеграм-боты. Почему боты во множественном числе? Потому как их несколько, ищут по-разному и из разных источников. Стоят до 5000 рублей в год — дешево и эффективно для OSINT.

Наш выбор:

Возможности поиска такие:

Вводим любую из представленных команд и получаем профит

Когда определились с целями и инструментами их реализации, переходим к проверке. 

Здесь рекомендации такие: 

  • Регулярно проводим полную проверку OSINT (не реже раза в месяц). Формируем отчет. Выносим поручения ответственным за утечки. 

  • Важно, чтобы проверяющий и ответственный не были одним лицом, иначе быстро замылится глаз. Нет ничего страшного, если появилась утечка. Даже ФБР с ЦРУ взламывают. 

  • Очень плохо, если о проблеме знают, но молчат. Это деструктивный подход, который никогда нельзя допускать. 

  • Важно понимать приоритеты. Одно дело найти устаревшее шифрование на протоколе передачи данных (здесь без MITM особо и не проэксплуатируешь), другое — когда попалась в руки учетка с рабочим паролем администратора домена. Здесь надо бросить все и менять пароль, проверяя логи успешных авторизаций. 

  • Проверкой OSINT должен заниматься профессионал. OSINT, особенно если он ручной, без аутсорса, — это не про управление тулзами. Сам по себе SpiderFoot и Lampyre не решат задачи разведки. Нужен человек с аналитическим складом ума, умеющий заниматься расследованием. Важное правило: все приходит с опытом. Если мечтали быть следователем или разведчиком, OSINT — ваш путь. 

    Представляем таблицу с разобранными в статье инструментами:

     Задача OSINT

    Инструменты, которые мы тестировали и можем рекомендовать к использованию

    Фрагменты исходного кода компании

    https://leak-search.com

    Threat Intelligence от Group-IB

    Секреты (ключи, пароли, токены)

    Lampyre 

    haveibeenpwned.com

    Threat Intelligence от Group-IB

    BI.ZONE Brand Protection

     

    Обнаружение зловредного кода, нацеленного на ресурсы компании

    spiderfoot 

    securityscorecard.com

    Attack Surface от Group-IB

    Обнаружение зловредных сайтов (фишинговые сайты

    dnstwist 

    Содействие в расследовании инцидентов:

    Получение доп информации о людях, компаниях, интернет ресурсах

    Поиск дополнительной информации о атакующих  

    spiderfoot 

    Lampyre 

    Threat Intelligence от Group-IB

    Телеграм боты:

    Глаз Бога 

    Quick OSINT

В заключение хочу сказать, что OSINT — важная составляющая информационной безопасности в наше время. Зная о планах противника, можно лучше подготовиться и даже пресечь кибератаку.  

OSINT — это эффективный метод защиты инфраструктуры компании, но требует квалифицированных кадров или больших инвестиций в сервисы Threat Intelligence. Важно понимать, что информация стоит денег и совсем бесплатно разведку не выстроить. Нужен баланс: либо отдаете разведку на аутсорс, либо ищете специалиста и снабжаете его инструментами.  

Если остались вопросы, пишите в комментариях: в споре рождается истина.