T1546.013: Профиль PowerShell
Злоумышленники могут закрепиться в системе и повысить свои привилегии путем запуска вредоносного содержимого, активируемого профилями PowerShell. Профиль PowerShell (profile.ps1
) — это сценарий, который выполняется при запуске PowerShell и может использоваться в качестве сценария входа в систему для настройки пользовательской среды.
PowerShell поддерживает несколько профилей в зависимости от пользователя или хост-программы. Например, для таких хост-программ PowerShell, как консоль PowerShell, PowerShell ISE или Visual Studio Code, могут быть назначены разные профили. Администратор также может задать профиль, который будет применяться ко всем пользователям и хост-программам на локальном компьютере .
Для закрепления в системе злоумышленники могут изменить эти профили, добавив в них нужные команды, функции, модули и (или) диски PowerShell. Измененный сценарий будет выполняться каждый раз, когда пользователь открывает сессию PowerShell, если при ее запуске не используется флаг -NoProfile
.
Злоумышленник также может повысить свои привилегии, если сценарий в профиле PowerShell будет загружен и выполнен от имени учетной записи с более высокими привилегиями, например от имени администратора домена .
Какие продукты Positive Technologies покрывают технику
Экспертиза MaxPatrol SIEM
— Мониторинг событий создания (идентификатор 11 в Sysmon) и изменения файлов profile.ps1 в расположениях $PsHome\Profile.ps1, $PsHome\Microsoft.{HostProgram}_profile.ps1, $Home\My Documents\PowerShell\Profile.ps1 и $Home\My Documents\PowerShell\Microsoft.{HostProgram}_profile.ps1. Пути файлов имеют следующие окончания: \Microsoft.PowerShell_profile.ps1; \WindowsPowerShell\profile.ps1; \PowerShell\profile.ps1; \Windows\System32\WindowsPowerShell\v1.0\profile.ps1; \Program Files\PowerShell\7\profile.ps1. — Мониторинг исполнения команды PowerShell (идентификаторы события 4103 и 4104), имеющей обязательный фрагмент «Add-Content $profile», а также один из следующих фрагментов: -Value "IEX; -Value "Invoke-Expression; -Value "Invoke-WebRequest; -Value "Start-Process; -Value 'IEX; -Value 'Invoke-Expression'; -Value 'Invoke-WebRequest'; -Value 'Start-Process'
Требуется эксперт. Техника обнаруживается только в связке «Продукт PT + эксперт»
Способы обнаружения
ID | DS0022 | Источник и компонент данных | Файл: Изменение файла | Описание | Для новых профилей рекомендуется отслеживать изменения в каталогах, в которых может храниться файл
|
---|
ID | DS0017 | Источник и компонент данных | Команда: Выполнение команд | Описание | Отслеживайте аномальные команды PowerShell, нетипичные загрузки дисков и модулей PowerShell. |
---|
ID | DS0022 | Источник и компонент данных | Файл: Создание файла | Описание | Для новых профилей рекомендуется отслеживать каталоги, в которых может храниться файл
|
---|
ID | DS0009 | Источник и компонент данных | Процесс: Создание процесса | Описание | Отслеживайте выполнение новых процессов, которые могут использоваться для закрепления в системе и повышения уровня привилегий путем запуска вредоносного содержимого, активируемого профилями PowerShell. |
---|
Меры противодействия
ID | M1054 | Название | Изменение конфигурации ПО | Описание | Избегайте профилей PowerShell, если в них нет необходимости. Используйте флаг -No Profile при удаленном выполнении сценариев PowerShell, чтобы предотвратить выполнение локальных профилей и сценариев. |
---|
ID | M1045 | Название | Подпись исполняемого кода | Описание | Обеспечьте выполнение только подписанных сценариев PowerShell. Подпишите профили, чтобы избежать их изменения. |
---|
ID | M1022 | Название | Ограничение разрешений для файлов и каталогов | Описание | Если сделать профили PowerShell доступными для изменения только определенным администраторам, это усложнит злоумышленникам закрепление в системе на уровне пользователя. |
---|