Давайте сегодня поговорим о теме абстракции, касательно всех команд SOC. Тема не новая, но многие забывают о ней или не осознают ее значимость.
Абстракция - это концепция, с помощью которой детали реализации скрыты от пользователя или автоматизированы для него
Для наглядного примера я взял скриншот из проекта AbstractionMaps.
💙 Детектирование может строиться на:
🔤 Используемых утилитах - эффективно, если корректно внедрен CTI, мы понимаем контекст того, какие группировки интересуются нашей организацией и следим за ними. Названия, метаинформация файлов, User-Agent'ы, сертификаты по умолчанию и т.п.
🔤 Утилиты строятся на использовании протоколов, API/WinAPI - так мы можем их обобщить и писать правила для обнаружения нескольких инструментов одновременно.
🔤 WinAPI под капотом часто использует RPC-интерфейсы и соответствующие методы.
🔤 В зависимости от выполняемых действий, на нижнем уровне могут быть обращения к файловой системе, реестру, сетевым протоколам.
Данный подход позволяет изучить исследуемый объект с нескольких сторон и сделать наши правила более универсальными.
❤️ Красной команде понимание абстракции важно при написании инструментов и повышении стелс-возможностей.
Рассмотрим процесс создания службы. Сколько вариантов вы можете назвать? 2-3 или больше? Например:
🔤 Утилита sc.exe create
🔤 Командлет New-Service
🔤 Invoke-PSExec
...и этот список можно продолжать бесконечно (yet another tool ✌️). А если углубиться ниже, все инструменты в конечном итоге используют одни и те же системные интерфейсы и их методы:
🔤 Вызов RPC, интерфейс UUID
{367ABB81-9844-35F1-AD32-98F038001003}🔤 Named pipe
\PIPE\svcctlМожно создать службу и через реестр), и тогда все вышеописанное окажется бесполезным).
Мы рассмотрели способы создания служб, но все созданное должно где-то храниться. В Windows основные конфигурации хранятся в реестре, остальные данные — в других структурах. Для эффективного детектирования нам нужно отслеживать создание ключей реестра, а также другие низкоуровневые события, опираясь на модель абстракции.
P.S. Эффективной практикой будет также отслеживание попыток изменения легитимных служб
#detection@detectioneasy
