T1543.003: Служба Windows
Злоумышленники могут создавать или изменять службы Windows для систематического выполнения полезной нагрузки с целью закрепления в системе. При загрузке Windows запускаются программы или приложения, называемые службами, которые выполняют фоновые задачи в системе. Информация о конфигурации службы Windows, включая путь к исполняемому файлу службы или программам/командам восстановления, хранится в реестре Windows.
Для закрепления в системе злоумышленники могут установить новую службу или изменить существующую, чтобы она выполнялась при запуске системы. Конфигурации служб можно устанавливать или редактировать с помощью системных утилит (например, sc.exe
), путем изменения реестра или напрямую через API Windows.
Злоумышленники также могут использовать службы для установки и запуска вредоносных драйверов. Например, после записи файла драйвера (например, с расширением .sys
) на диск полезная нагрузка может быть загружена и зарегистрирована с помощью функций нативного API, таких как CreateServiceW()
(или вручную с помощью функций ZwLoadDriver()
и ZwSetValueKey()
), либо путем создания необходимых значений для служб в реестре (техника Изменение реестра), либо с помощью утилит командной строки, таких как PnPUtil.exe
. Злоумышленники могут использовать эти драйверы в качестве руткитов, чтобы скрыть свою вредоносную активность в системе. Злоумышленники также могут загрузить подписанный, но уязвимый драйвер на скомпрометированный компьютер (техника, известная как Bring Your Own Vulnerable Driver (BYOVD)) с целью эксплуатации уязвимостей для повышения привилегий.
Службы, созданные с привилегиями администратора, могут выполняться с привилегиями SYSTEM, поэтому злоумышленник может также использовать службу для повышения привилегий. Злоумышленники также могут напрямую запускать службы через диспетчер управления службами (SCM).
Чтобы усложнить анализ и обнаружение, вредоносные службы также могут использовать маскировку задачи или службы (например, использовать имя службы и (или) полезной нагрузки, связанное с легитимной ОС или легитимным программным компонентом). Злоумышленники также могут создавать скрытые службы (техника Сокрытие артефактов), например, используя команду sc sdset
для установки разрешений службы с применением языка SDDL (Service Descriptor Definition Language). Это позволяет скрыть службу Windows от обнаружения стандартными средствами, например Get-Service
, sc query
и services.exe
.
Какие продукты Positive Technologies покрывают технику
Экспертиза MaxPatrol SIEM
mitre_attck_execution: PT-CR-257: Windows_Service_Installed: Обнаружена попытка установить новую службу не из системных каталогов Windows mitre_attck_execution: PT-CR-217: Execute_PSEXEC: Обнаружение попыток запусить утилиту администрирования PsExec и ее аналогов mitre_attck_execution: PT-CR-778: Hidden_Service_Create: Обнаружено создание скрытой службы через реестр без использование функции CreateService mitre_attck_persistence: PT-CR-271: Service_Created_Or_Modified: Обнаружена попытка выполнить операции со службами Microsoft Windows через командную строку или PowerShell mitre_attck_cred_access: PT-CR-1363: Masky_Tool_Usage: Обнаружение использования инструмента Masky, предназначенного для получения NT-хешей и TGT пользователей, работающих на атакованных узлах, для запроса сертификатов от их имени mitre_attck_lateral_movement: PT-CR-1981: SVCCTL_Connection: Удаленное подключение к диспетчеру служб с помощью интерфейса svcctl, который позволяет удаленно управлять службами Windows mitre_attck_lateral_movement: PT-CR-226: Remoting_Impacket_PsExec: Обнаружено удаленное выполнение кода с помощью PsExec из набора Impacket mitre_attck_lateral_movement: PT-CR-1752: Service_From_Remote_File_Creation: Создание службы из сетевой директории mitre_attck_lateral_movement: PT-CR-589: Remoting_SysInternals_PsExec: Обнаружено удаленное выполнение кода с помощью PsExec из набора Sysinternals Suite mitre_attck_lateral_movement: PT-CR-785: Modify_And_Start_Remote_Service: Обнаружена попытка выполнения кода или горизонтального перемещения путем изменения команды запуска системных служб hacking_tools: PT-CR-1356: Sliver_PsExec: Запуск модуля Sliver PsExec из С2 фреймворка Sliver hacking_tools: PT-CR-752: Cobalt_Strike_Psexec_Jump: Перемещение внутри периметра с помощью утилиты PSexec для Cobalt Strike hacking_tools: PT-CR-523: Remote_Connection_Through_SMBEXEC_WinXP: Обнаружение попыток закрепиться в системе при помощи техники SMBExec hacking_tools: PT-CR-1355: Sliver_GetSystem: Удаленное выполнение команды Sliver GetSystem из С2 фреймворка Sliver hacking_tools: PT-CR-2632: Subrule_Cobalt_Strike_Service_Creation: Создана служба с указанием сетевого пути к исполняемому файлу для перемещения внутри периметра или повышения привилегий с помощью Cobalt Strike hacking_tools: PT-CR-1838: NimExec_Activity: Активность инструмента NimExec, использующегося для удаленного выполнения команд
Способы обнаружения
ID | DS0009 | Источник и компонент данных | Процесс: Создание процесса | Описание | При сопоставлении запущенных процессов с историческими данными можно выявить новые, подозрительные процессы, запущенные через службы. Отслеживайте аномальные деревья процессов, запущенных известными службами, а также выполнение команд, которые могут быть связаны с техниками изучения и другими методами злоумышленников. Рекомендуется рассматривать события с данными не обособленно, а как элементы цепочки, за которыми могут последовать те или иные дальнейшие действия злоумышленников, например подключение к командному серверу, изучение окружения посредством соответствующих техник и перемещение внутри периметра. Windows запускает диспетчер управления службами (SCM) из процесса services.exe. Windows запускает службы как отдельные процессы или DLL-библиотеки в группе svchost.exe. Точкой входа для процессов и DLL, являющихся легитимными службами, является функция SvcMain соответствующей службы. Если у приложения нет этой точки входа, по истечении тайм-аута (который по умолчанию равен 30 секундам) процесс завершится. Чтобы избежать завершения процесса по истечении тайм-аута, злоумышленники и специалисты по тестированию на проникновение могут создавать службы, которые перенаправляют нужную команду в cmd с флагом /c. Флаг /c обеспечивает выход из командной оболочки сразу после выполнения команды. В результате нужная программа продолжит выполняться, а при запуске службы появится сообщение об ошибке. Аналитика отслеживает вызов командной строки с целью запуска вредоносного исполняемого файла. Кроме того, процессы, порожденные services.exe, и их потомки по умолчанию запускаются от имени учетной записи SYSTEM. Примечание. Создайте список служб, запущенных за последние 30 дней, и список служб, запущенных сегодня. Сопоставив эти списки, вы обнаружите новые запущенные службы. Этот анализ возвращает все процессы с именем cmd.exe, порожденные services.exe. В поисковом запросе не обязательно указывать флаг /c, поскольку случай сам по себе является аномальным. Аналитика 2. Службы, запускающие CMD
|
---|
ID | DS0029 | Источник и компонент данных | Сетевой трафик: Поток сетевого трафика | Описание | Отслеживайте несколько способов выполнения кода на удаленном узле. Один из самых распространенных способов — использование диспетчера управления службами Windows (SCM), который позволяет авторизованным пользователям удаленно создавать и изменять службы. Эту функциональность используют некоторые инструменты, например PsExec. Когда клиент удаленно взаимодействует с диспетчером управления службами, можно наблюдать два варианта поведения. Сначала клиент подключается к системе RPC Endpoint Mapper через порт 135/TCP. Эта система проводит аутентификацию и сообщает клиенту, какой порт прослушивает конечная система (в данном случае SCM). Затем клиент подключается непосредственно к порту прослушивания в services.exe. Если запрос заключается в запуске существующей службы с известной командной строкой, процесс SCM выполнит соответствующую команду. Чтобы обнаружить такую активность, необходимо следить за случаями, когда процесс services.exe принимает сетевое соединение и сразу же запускает дочерний процесс. |
---|
ID | DS0019 | Источник и компонент данных | Служба: Создание службы | Описание | Создание новых служб может привести к возникновению события изменения (например, события с идентификаторами 4697 и (или) 7045), особенно если эти службы связаны с неизвестными/аномальными драйверами. Во время установки программного обеспечения могут создаваться новые службы, которые безопасны для пользователей. Аналитика 1. Создание новых служб в нестандартных каталогах, включая временные файлы в каталоге APPDATA
|
---|
ID | DS0019 | Источник и компонент данных | Служба: Изменения в службе | Описание | Отслеживайте изменения в службах Windows, предназначенные для систематического выполнения полезной нагрузки с целью закрепления в системе. |
---|
ID | DS0024 | Источник и компонент данных | Реестр Windows: Изменение ключа реестра Windows | Описание | Отслеживайте изменения в записях реестра служб, не связанные с известным ПО, циклами выпуска исправлений и другой легитимной активностью. Данные служб хранятся в реестре в Аналитика 1. Изменение ключа реестра HKLM\System\CurrentControlSet\Services
|
---|
ID | DS0017 | Источник и компонент данных | Команда: Выполнение команд | Описание | Отслеживайте процессы и аргументы командной строки, которые могут использоваться для создания или изменения служб. В некоторых средах запуск инструментов, способных добавлять или изменять службы, через командную строку может быть подозрительным. Для изменения служб также могут использоваться системные средства администрирования, такие как инструментарий управления Windows и PowerShell. Для сбора данных об использовании этих средств рекомендуется настроить дополнительные функции журналирования. Рекомендуется собирать данные о запуске утилит, пути к бинарным файлам служб и использованных аргументах для дальнейшего анализа. Злоумышленники могут менять пути к бинарным файлам служб, чтобы выполнять свои команды и сценарии. |
---|
ID | DS0022 | Источник и компонент данных | Файл: Метаданные файла | Описание | Злоумышленники могут изменить бинарный файл существующей службы с целью закрепления в системе, потенциально используя при этом тактику Предотвращение обнаружения. Если недавно созданный или измененный файл запускается как служба, это может свидетельствовать об APT-атаке. Однако стоит учесть, что легитимное ПО тоже нередко устанавливает службы. Чтобы отличать безопасные изменения в работе службы от вредоносных, необходимо тщательно сформировать профиль нормальной активности. Обращайте особое внимание на события, уведомляющие о создании файла с последующим его запуском как службы. Это свидетельствует или о создании новой службы, или об изменении бинарного файла. Подобные операции выполняют многие легитимные программы, включая msiexec.exe. Отслеживая их, можно подтвердить легитимность создания или изменения службы. |
---|
ID | DS0024 | Источник и компонент данных | Реестр Windows: Создание ключа реестра Windows | Описание | Отслеживайте создание ключей реестра, которые могут создать службы Windows или изменить их настройки для систематического выполнения полезной нагрузки с целью закрепления в системе. Аналитика 1. Создание ключа реестра HKLM\System\CurrentControlSet\Services
|
---|
ID | DS0027 | Источник и компонент данных | Драйвер: Загрузка драйвера | Описание | Отслеживайте установку и загрузку новых драйверов служб (например, события Sysmon с идентификатором 6) вне циклов выпуска обновлений и исправлений известного ПО. Примечание. С помощью события Sysmon с идентификатором 6 (загрузка драйвера) можно понять, имелась ли у загруженного драйвера действительная подпись (это указано в полях |
---|
ID | DS0009 | Источник и компонент данных | Процесс: Вызовы API ОС | Описание | Отслеживайте вызовы API (такие как |
---|
Меры противодействия
ID | M1018 | Название | Управление учетными записями | Описание | Ограничьте привилегии пользователей и групп пользователей таким образом, чтобы только авторизованные администраторы могли вносить изменения в службы и их конфигурацию. |
---|
ID | M1028 | Название | Изменение конфигурации ОС | Описание | Проследите, чтобы была включена функция Driver Signature Enforcement для запрета установки неподписанных драйверов. |
---|
ID | M1040 | Название | Предотвращение некорректного поведения | Описание | Включите правила Attack Surface Reduction (ASR) в Windows 10, чтобы предотвратить запись приложением в систему подписанного уязвимого драйвера. В Windows 10 и 11 включите блок-лист уязвимых драйверов Microsoft для защиты от драйверов служб, разработанных сторонними разработчиками. |
---|
ID | M1045 | Название | Подпись исполняемого кода | Описание | Обеспечьте регистрацию и выполнение только легитимно подписанных драйверов служб, где это возможно. |
---|
ID | M1047 | Название | Аудит | Описание | Используйте средства аудита, способные обнаружить возможности злоупотребления привилегиями и службами в системах предприятия и устранить их. |
---|