Upgrade to Pro — share decks privately, control downloads, hide ads and more …

C2 от Microsoft: что может пойти не так, если S...

Gleb Ivanov
November 14, 2024
21

C2 от Microsoft: что может пойти не так, если SCCM окажется не в тех руках

Slides from SocForum 2024
Video: https://broadcast.comdi.com/watch/res6lo2u

Gleb Ivanov

November 14, 2024
Tweet

Transcript

  1. C2 от Microsoft: Что может пойти не так, если SCCM

    окажется не в тех руках Иванов Глеб Игоревич и Родченко Александр Михайлович Старшие аналитики SOC в группе исследований и развития технологий мониторинга
  2. О чем будет доклад • Роль SCCM в инфраструктуре AD

    • Архитектура и иерархия SCCM • Использование WMI в SCCM • Матрица атак на SCCM • Как мониторить и куда смотреть
  3. Что такое SCCM? System Center Configuration Manager – это централизованная

    платформа для управления и автоматизации различных задач, связанных с IT-инфраструктурой. Она предоставляет организациям возможность эффективно управлять компьютерами, серверами и мобильными устройствами. Задачи: • Развертывание и обновление программного обеспечения • Управление обновлениями безопасности • Развертывание операционных систем • Инвентаризация и управление активами • Мониторинг и отчетность • Удаленное управление клиентами • Управление защитой конечных точек (Windows Defender)
  4. Архитектура и роли сервиса Каждый установленный Configuration Manager сайт включает

    сервер сайта, который является сервером системы сайта. Серверы системы сайта поддерживают роли системы сайта. Роли могут находиться как на основном сервере сайта, так и на других серверах. Основные роли: • Site Server • Site System • SMS Provider • Site Database Server • Distribution point • Management point
  5. Роль WMI SQL Site server Хранение документов, состояний, конфигураций, резервное

    копирование сайта Management/distribution points IIS/BITS ROOT\CCM WMI Client classes ROOT\SMS WMI Server classes SCCM Client Применение, состояний, конфигураций, настроек и установка ПО SCCM Console / Powershell Management scripts В Configuration Manager WMI играет одну из фундаментальных ролей. Каждое изменение отправляется через удаленный вызов процедуры (RPC) на SMS-провайдер, который также записывает все в БД MSSQL. Помимо этого клиент SCCM использует WMI для хранения информации, конфигурации и сбора информации об аппаратном/программном обеспечении инвентаризации, используя встроенные провайдеры для сбора информации, требуемой от ОС.
  6. Discovery На этапе разведки атакующий ищет контейнер LDAP, связанный с

    SCCM, а также ищет все УЗ, которые тоже содержат в себе название sccm или mecm.
  7. Как детектировать? title: SCCM Reconnaissance/Enumeration Via LDAP status: active description:

    Detects SCCM enumeration via LDAP references: - https://github.com/garrettfoster13/sccmhunter/ author: Kaspersky date: 2024-07-10 tags: - attack.discovery - attack.t1069.002 - attack.t1087.002 - attack.t1482 logsource: product: windows service: ldap definition: 'Requirements: Microsoft-Windows-LDAP- Client/Debug ETW logging' detection: sccm_container_search: SearchFilter|contains: - 'system management' sccm_users_search: SearchFilter|contains: - '*sccm*' - '*mecm*' condition: sccm_container_search or sccm_users_search level: medium
  8. Аккаунты SCCM SCCM использует и создает огромное множество различных аккаунтов

    и групп. Наиболее популярными из них являются Network Access Account (NAA) и Client push installation account. • NAA – можно найти в каждом клиентском конфиге. Используется для доступа к ресурсам SCCM, когда хосты не могут использовать свою УЗ для загрузки контента. Например, при развертывании ОС через загрузку среды выполнения предварительной загрузки (PXE). • Client push installation account – входит в группу локальных админов на каждом хосте в домене. Используется при установке клиента на хост.
  9. Credential access Получение секретов с загрузочного носителя PXE Запрос компьютерной

    политики и деобфускация секретов Удаленный дамп секретов через WMI
  10. Куда смотреть? 2. Определяем какие УЗ используются сервисом SCCM 1.

    Проверяем наличие хостов с провайдером SMS 4. Ищем логоны сервисных УЗ не из списка хостов SCCM 3. Собираем список хостов и список УЗ SCCM
  11. Privilege Escalation Все техники на повышение привилегий (TAKEOVER) сводятся к

    тому, что происходит принудительная аутентификация и релей одного компонента SCCM на другой. Пример реализации техники TAKEOVER-1
  12. Как детектировать? Смотрим на успешный логон машинной УЗ не из

    под ее адреса Смотрим на добавление пользователя в локальную группу SMS Admins К сожалению, по аудиту Windows невозможно понять, кто именно добавил пользователя в группу SMS Admins, так как в поле Subject всегда будет машинная УЗ SCCM.
  13. Execution Выполнение скрипта на клиенте SCCM (EXEC-2) SCCM позволяет запускать

    только те скрипты, которые были заапрувлены вторым пользователем – это может быть как отдельная роль, так и просто второй админ.
  14. Тот, кто ломает вещь, чтобы понять, что она такое, оставил

    путь мудрости Гэндальф Серый Саруману Белому Detection Methods
  15. Detection Methods: SQL SQL DUMP ATTACK SQL DUMP Compare SQL

    Trigger Over Engineering Можно написать SQL триггер, который будет нас уведомлять о важных изменениях, в SCCM. Но это достаточно сложно: необходимо знать отношения в базе между объектами и представлениями. Однако, можно воспользоваться богатым материалом от комьюнити Очевидный способ собирать данные с SQL, сравнивать их между собой и искать подозрительные изменения. Это сложно так как SQL на сайт сервере содержит значительный объём информации, отношения между полями, таблицами и представлениями – сложны. Но в хранилище документов можно найти много информации для форензики
  16. Как мониторить SCCM через WMI? EXEC-1 Мы можем получать информацию

    из определенных классов WMI и обогащать найденную информацию на потоке телеметрии SOC CRED-2 TAKEOVER EXEC-2 ELEVATE
  17. Выводы • Функционал SCCM практически ничем не ограничен, что буквально

    делает его легитимным С2-фреймворком для атакующего. • SCCM и атаки на него показывают пример ситуации, когда ВПО может быть определено на одной системе, а исполняться на другой. • На мониторинг SCCM нужны новые инструменты и методы, так как аудит от Microsoft довольно сильно ограничен, поэтому мы рады поделиться с вами нашим инструментом, который вы можете внедрить в свои процессы SOC - https://github.com/gam4er/SCCMInfo SCCM