Друзья, всем привет. Недавно мы анонсировали серию публикаций о детектировании атак (attack detection) и тех вызовах, c которыми сталкиваются пользователи средств защиты. В первой статье этого цикла материалов мы уже раскрыли секреты attack detection в привязке к SIEM-решениям (системам мониторинга событий ИБ и выявления инцидентов, security information and event management) и поделились лайфхаками, как облегчить работу операторов и автоматизировать часть рутинных задач. В этом материале — подробнее о том, как механизм построения цепочек запускаемых процессов в MaxPatrol SIEM помогает выявлять атакующих в сети.
Любая интерактивная атака злоумышленников на инфраструктуру компании не обойдется без запуска каких-либо процессов независимо от операционной системы, в которой у злоумышленника появилась возможность выполнять команды. Большое количество правил корреляции для выявления TTP, то есть tactics, techniques, and procedures (тактики, техники, процедуры), атакующих в MaxPatrol SIEM основано на событиях, в которых присутствуют данные о процессе.
Во время анализа сработок правил корреляции у специалистов SOC Positive Technologies много времени уходит на «раскручивание» цепочки запускаемых процессов (последовательности запуска связанных между собой процессов), так как для принятия решения, что это — true positive или false negative, — зачастую недостаточно данных только о родителе процесса. Это было основным фактором, побудившим нас, сотрудников PT Expert Security Center (PT ESC), разработать механизм, автоматизирующий построение цепочек запускаемых процессов на основе событий безопасности Windows EID 4688, Sysmon EID 1 и событий подсистемы аудита Linux (auditd). Мы придумали механизм, обогащающий любое скоррелированное событие, в котором есть информация о процессе, его полной цепочкой и записывающий данную информацию в отдельное поле таксономии.
Рис. 1. Пример нормализованного события запуска процессов Sysmon EID 1
Рис. 2. Пример нормализованного события подсистемы аудита Linux (auditd)
Это решение позволило не только разгрузить операторов SOC за счет автоматизации задач по «раскручиванию» цепочек процессов, но и расширить возможности продукта: новое поле таксономии с данными о цепочках процессов в некоторых случаях облегчает написание правил корреляции, используется для вайтлистинга, блэклистинга, применение моделей Machine learning (ML).
По собственному опыту работы с другими продуктами этого класса и по результатам анализа их возможностей могу сказать, что я пока нигде больше не встречал реализации подобной функциональности. Некоторые производители применяют визуализацию цепочек процессов при реагировании на инциденты, используя данные от своих же EDR-решений или расширения, которые анализируют соответствующие события из базы данных и визуализируют деревья процессов при необходимости (кстати, для MaxPatrol SIEM есть подобное расширение — найти его можно вот тут (см. рис. 3)). При активации механизма в MaxPatrol SIEM цепочки процессов строятся независимо от данных EDR или дополнительных расширений в режиме реального времени и без участия человека; с этими данными можно работать как с любым другим полем таксономии. Об этом поговорим дальше.
Рис. 3. Пример расширения для браузера, строящего дерево процессов по событиям из базы данных по запросу пользователя
Анализ атомарных сработок правил корреляции
В сработках правил корреляции нам, как правило, не хватало дополнительного контекста о цепочке процессов. Задача механизма построения цепочки запускаемых процессов состоит не в их визуализации как таковой для расследования, а в записи в отдельное поле таксономии для быстрого визуального анализа прямо из карточки события или практического применения этих данных в корреляциях, обогащениях и т. д.
Наличие в карточке события данных о цепочке процессов в разы сокращает время, необходимое операторам на понимание контекста сработки даже путем визуального анализа данных. Любая сработка правила корреляции в MaxPatrol SIEM, имеющая данные о процессе (имя процесса и его PID), будет обогащаться цепочкой запускаемых процессов независимо от типа события.
Рассмотрим несколько практических примеров обнаружения различных TTP, относящихся к данному разделу.
1. Discovery. Account Discovery. Пример сработки правила корреляции на рекогносцировку активности пользователей через взломанный сервер Exchange.
Рис. 4. Сработка правила корреляции на рекогносцировку активности пользователей с механизмом построения цепочек запускаемых процессов
2. Discovery. Remote System Discovery. Пример сработки правила корреляции на рекогносцировку контроллера домена, основанного на событии запуска процесса без данных о цепочке процессов, и та же сработка правила корреляции с данными о цепочке процессов.
Рис. 5. Сработка правила корреляции на рекогносцировку контроллера домена без механизма построения цепочек запускаемых процессов