Практическая польза атрибуции киберугроз

Зачем нужна атрибуция вредоносного программного обеспечения конкретной хакерской группировке.

Чем атрибуция киберугроз помогает на практике?

Далеко не все практикующие ИБ-специалисты считают целесообразным определять, кто именно стоит за вредоносным ПО, обнаруженном при атаке на их компанию. Типичный алгоритм действий при расследовании подобных инцидентов таков: нашли подозрительный файл → если антивирус его не заблокировал, проверили в «песочнице» → увидели вредоносную активность → добавили хеш в списки блокировки на средствах защиты информации (СЗИ) → пошли пить чай. Так поступают многие ИБ-специалисты, особенно когда у них нет достаточного времени на расследование инцидентов или не хватает знаний и навыков «раскрутить» по ниточке весь клубок хакерской атаки. Однако, когда речь идет о целевых атаках на компанию, это прямой путь к провалу, и вот почему.

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

Но как сделать это эффективно и быстро, пока злоумышленники не успели причинить реальный ущерб? Один из способов — погрузиться в контекст. По файлу определить, кто именно вас атакует; быстро выяснить, какие еще инструменты и тактики используются этими же злоумышленниками; проверить свою инфраструктуру на наличие связанных угроз. Для этих целей есть немало инструментов threat intelligence, но я покажу, как это работает, на примере нашего Kaspersky Threat Intelligence Portal.

Практический пример пользы от атрибуции

Допустим, вы загружаете на сайт найденный вами файл ВПО на портал Threat Intelligence и выясняете, что он используется, например, хакерской группировкой MysterySnail. Что вам дает это знание? Давайте посмотрим на доступную информацию:

Информация о группировке MysterySnail

Так, злоумышленники атакуют госучреждения в России и Монголии. Это китайскоговорящая хакерская группировка, она обычно занимается шпионажем. Судя по описанию, она закрепляется в инфраструктуре и тихо сидит, пока не обнаружит что-то интересное. Известно, что она обычно пытается эксплуатировать уязвимость CVE-2021-40449. Что же это за уязвимость?

Детали уязвимости CVE-2021-40449

Ага, это уязвимость для повышения привилегий, то есть уже после попадания в инфраструктуру. У нее и рейтинг высокий, и эксплуатируется она очень активно. В каком программном обеспечении присутствует эта уязвимость?

Уязвимое ПО

Ясно, Microsoft Windows. Нужно проверить, установлено ли обновление, в котором эта уязвимость закрыта. Так, а кроме уязвимости, что про них известно? Оказывается, они изучают конфигурацию сети интересным способом — коннектятся на публичный ресурс 2ip.ru:

Детали использования техники

Самое время добавить в SIEM корреляционное правило для обнаружения такого поведения.

Теперь стоит почитать про эту группировку поподробнее, набрать дополнительных индикаторов компрометации (IoC) для мониторинга в SIEM, а также готовых YARA-правил (структурированных текстовых описаний, используемых для идентификации вредоносных программ), чтобы найти все щупальца этого спрута, которые могли уже проникнуть в вашу инфраструктуру, а также чтобы оперативно обнаруживать их при возможных повторных попытках проникновения:

Дополнительные отчеты по MysterySnail

На Kaspersky Threat Intelligence Portal можно найти массу отчетов про атаки MysterySnail и к каждому — список индикаторов компрометации и YARA-правил. Можно просканировать этими YARA-правилами все конечные точки вашей инфраструктуры и поставить все указанные IoC-и на мониторинг в SIEM-систему. Заодно в самих отчетах посмотреть, как эти злоумышленники осуществляют эксфильтрацию и за какой информацией они обычно охотятся. Теперь можно принять меры по недопущению такой атаки.

Ну что ж, Волшебная Улитка, инфраструктура настроена на твое обнаружение и оперативное реагирование, теперь тебе не удастся здесь шпионить!

Методы атрибуции ВПО хакерской группировке

Прежде чем описывать конкретные методы, нужно оговориться, что для успешной атрибуции вендор инструмента должен иметь внушительную базу знаний о применяемых злоумышленниками техниках, тактиках и процедурах TTP. У разных вендоров наполнение такой базы может сильно отличаться как по объему, так и по качеству. Мы, например, прежде чем сделать свой инструмент, годами отслеживали активность известных группировок в различных кампаниях и фиксировали применяемые ими TTP — и продолжаем активно пополнять и обновлять свою базу.

С базой TTP можно реализовать следующие варианты атрибуции.

  1. Динамическая атрибуция — выявление TTP методом динамического анализа конкретных файлов c последующим сопоставлением множества обнаруженных TTP с TTP известных группировок.
  2. Техническая атрибуция — обнаружение совпадений в коде конкретных файлов с фрагментами кода, используемого известными группировками в своем ВПО.

Динамическая атрибуция

Выявление TTP в процессе динамического анализа проще в реализации, такая функциональность уже давно является неотъемлемой функциональностью всех современных «песочниц». Конечно же во всех наших «песочницах» мы также выявляем TTP в процессе динамического анализа сэмпла ВПО:

TTP вредоносного образца

Суть данного метода — в категоризации активности ВПО по фреймворку MITRE ATT&CK. В отчете «песочницы» обычно выдается перечень обнаруженных TTP. Это очень полезная информация, но для полноценной атрибуции атаки конкретной группировки ее недостаточно. Попытка определить таким образом, кто стоит за атакой, напоминает древнеиндийскую притчу о слепых и слоне. Люди с завязанными глазами касаются разных частей слона и, опираясь лишь на фрагмент, пытаются понять, что перед ними. Тот, кто касается хобота, считает, что это удав, тот кто трогает туловище, уверен, что это стена, и так далее.

Слепые и слон

Техническая атрибуция

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

Подход «Лаборатории Касперского» к атрибуции

Мы в своих продуктах используем уникальную, накопленную более чем за 25 лет базу ВПО, ассоциируемого с конкретными хакерскими группировками. Кроме того, мы применяем запатентованный алгоритм атрибуции на основе статического анализа дизассемблированного кода, позволяющий с высокой точностью (и даже с указанием вероятности в процентах) определять сходство анализируемого файла с уже известными файлами той или иной хакерской группировки и таким образом сформулировать взвешенное предположение о принадлежности данного ВПО конкретному злоумышленнику. Результат атрибуции проверяется на ложноположительные связи с базой в миллиард легитимных файлов; при совпадении с любым из них вердикт атрибуции корректируется. Данный подход используется в инструменте Kaspersky Threat Attribution Engine (KTAE), который, в том числе, и работает в сервисе атрибуции угроз на Kaspersky Threat Intelligence Portal.

Советы