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 + эксперт»

Способы обнаружения

IDDS0022Источник и компонент данныхФайл: Изменение файлаОписание

Для новых профилей рекомендуется отслеживать изменения в каталогах, в которых может храниться файл profile.ps1 . Варианты местоположения профилей включают:

  • $PsHome\Profile.ps1
  • $PsHome\Microsoft.{HostProgram}_profile.ps1
  • $Home\My Documents\PowerShell\Profile.ps1
  • $Home\My Documents\PowerShell\Microsoft.{HostProgram}_profile.ps1
IDDS0017Источник и компонент данныхКоманда: Выполнение командОписание

Отслеживайте аномальные команды PowerShell, нетипичные загрузки дисков и модулей PowerShell.

IDDS0022Источник и компонент данныхФайл: Создание файлаОписание

Для новых профилей рекомендуется отслеживать каталоги, в которых может храниться файл profile.ps1 . Варианты местоположения профилей включают:

  • $PsHome\Profile.ps1
  • $PsHome\Microsoft.{HostProgram}_profile.ps1
  • $Home\My Documents\PowerShell\Profile.ps1
  • $Home\My Documents\PowerShell\Microsoft.{HostProgram}_profile.ps1
IDDS0009Источник и компонент данныхПроцесс: Создание процессаОписание

Отслеживайте выполнение новых процессов, которые могут использоваться для закрепления в системе и повышения уровня привилегий путем запуска вредоносного содержимого, активируемого профилями PowerShell.

Меры противодействия

IDM1054НазваниеИзменение конфигурации ПООписание

Избегайте профилей PowerShell, если в них нет необходимости. Используйте флаг -No Profile при удаленном выполнении сценариев PowerShell, чтобы предотвратить выполнение локальных профилей и сценариев.

IDM1045НазваниеПодпись исполняемого кодаОписание

Обеспечьте выполнение только подписанных сценариев PowerShell. Подпишите профили, чтобы избежать их изменения.

IDM1022НазваниеОграничение разрешений для файлов и каталоговОписание

Если сделать профили PowerShell доступными для изменения только определенным администраторам, это усложнит злоумышленникам закрепление в системе на уровне пользователя.