T1059: Интерпретаторы командной строки и сценариев

Злоумышленники могут использовать интерпретаторы командной строки и сценариев для выполнения команд или запуска сценариев и исполняемых файлов. Эти интерфейсы и языки, реализованные на многих платформах, предоставляют возможности для взаимодействия с компьютерными системами. Большинство систем имеют определенные встроенные функции интерфейса командной строки и сценариев. Так, например, в разные версии macOS и Linux включаются различные варианты командной оболочки Unix, а в Windows — командная оболочка Windows и PowerShell.

Существуют также кросс-платформенные интерпретаторы, например Python, а также интерпретаторы, обычно ассоциируемые с клиентскими приложениями, такие как JavaScript и Visual Basic.

Злоумышленники могут использовать эти технологии различными способами для выполнения произвольных команд. Команды и сценарии могут быть встроены в полезные нагрузки первоначального доступа, доставляемые жертвам в документах-приманках, или во вспомогательные полезные нагрузки, загружаемые с командного сервера после установления связи с ним. Злоумышленники также могут выполнять команды через интерактивные терминалы/оболочки, а также использовать различные службы удаленного доступа для удаленного выполнения.

Какие продукты Positive Technologies покрывают технику

Экспертиза MaxPatrol SIEM

unix_mitre_attck_execution: PT-CR-1031: Unix_Inline_Reverse_Or_Bind_Shell: Прямое или обратное подключение (bind или reverse shell) обнаружено по специфичным шаблонам команды, запущенной на исполнение unix_mitre_attck_execution: PT-CR-296: Unix_Reverse_Shell: Обратное подключение (reverse shell), созданное при помощи сторонних утилит unix_mitre_attck_execution: PT-CR-1678: Unix_File_Creation_By_Script: Создание файла с помощью Python- или Ruby-скрипта unix_mitre_attck_execution: PT-CR-1018: Unix_Hacktool_Usage: Использование инструментов из табличного списка Unix_Hacktools для анализа защищенности на узлах под управлением Unix sap_suspicious_user_activity: PT-CR-254: SAPASABAP_GW_Sapxpg_Call: Запуск SAPXPG mitre_attck_cred_access: PT-CR-2124: LSASS_Dump_Via_RPC: Обращение к памяти процесса LSASS. Получив доступ к памяти процесса LSASS после подключения соответствующей утилиты (например, Mimikatz) к RPC-серверу, злоумышленники могут сохранить эту память в отдельный файл для извлечения из него в дальнейшем паролей и NTLM-хешей mysql_database: PT-CR-613: MySQL_Structure_Discovery: Выполнение некоторых SQL-команд может свидетельствовать о разведке внутренней структуры базы данных MySQL, что может быть признаком активности злоумышленника mysql_database: PT-CR-617: MySQL_Code_Execution: Запуск процесса от имени учетной записи базы данных может свидетельствовать о попытке злоумышленника, получившего возможность выполнять запросы к базе данных, повысить привилегии mysql_database: PT-CR-2304: MySQL_File_System_Actions: Взаимодействие базы данных MySQL с файловой системой может свидетельствовать о разведке или попытках злоумышленника повысить привилегии в том случае, если это не штатная интеграция базы данных с внешними системами hacking_tools: PT-CR-2622: Cobalt_Strike_Child_Process: Обнаружен дочерний процесс, запущенный зараженным Cobalt Strike процессом или маяком indeed_pam: PT-CR-2889: Indeed_Executing_Forbidden_Command_via_SSH: Попытка выполнить запрещенную команду во время сеанса через SSH в Indeed PAM it_bastion: PT-CR-2184: SKDPUNT_Blacklisted_Command: Выполнена команда из черного списка it_bastion: PT-CR-2171: SKDPUNT_Suspicious_Command: Пользователь выполнил потенциально опасную команду it_bastion: PT-CR-2177: SKDPUNT_Potentially_Dangerous_Command: Использованы потенциально опасные команды mitre_attck_execution: PT-CR-339: Subrule_Script_Files_Execution: Пользователь запустил скрипт mitre_attck_execution: PT-CR-2707: Execute_File_From_Sysvol_Share: Запущен процесс или сценарий из одного из дочерних каталогов общего сетевого ресурса Sysvol: Startup, Shutdown, Logon, Logoff, Scripts. Эти каталоги используются для хранения исполняемых файлов и файлов сценариев, необходимых для управления групповыми политиками и другими настройками в Active Directory. Это может быть попыткой злоумышленника закрепиться в системе mitre_attck_execution: PT-CR-2810: Script_Files_Execution: Пользователь запустил скрипт с помощью процесса, который обратился на внешний адрес, запустил дочерний процесс, изменил ключ реестра, чтобы закрепиться в инфраструктуре, получил доступ к другому процессу или создал удаленный поток в другом процессе pt_application_firewall: PT-CR-1915: PTAF_Hacktool_Detected: Приложение PT AF обнаружило признаки использования вредоносной утилиты

Подтехники

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

IDDS0012Источник и компонент данныхСценарий: Выполнение сценарияОписание

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

IDDS0017Источник и компонент данныхКоманда: Выполнение командОписание

Отслеживайте нестандартное использование Python или нетипичное поведение процесса python.exe — это может служить индикатором вредоносной активности. Чтобы избежать большого количества ложных срабатываний, важно знать стандартные модели использования. Если у обычных пользователей нет прав на выполнение сценариев, то любая попытка включить поддержку сценариев должна рассматриваться как подозрительная. Если использование сценариев в системе допустимо, но не является типичным, их выполнение вне цикла обновлений или других административных задач должно рассматриваться как подозрительное. По возможности сохраняйте сценарии, записанные в файловой системе, для последующего анализа действий и целей злоумышленников. Действия, выполняемые посредством сценариев, могут по-разному воздействовать на систему и генерировать события, отслеживаемые используемыми механизмами мониторинга. Отслеживайте команды и сценарии Python, которые могут использоваться для выполнения вредоносного кода, и их аргументы.

IDDS0011Источник и компонент данныхМодуль: Загрузка модуляОписание

Отслеживайте загрузку модулей, связанных с языками сценариев (например, JScript.dll).

IDDS0009Источник и компонент данныхПроцесс: Метаданные процессаОписание

По возможности отслеживайте события Windows с ИД 400: в поле EngineVersion указана версия запущенной оболочки PowerShell (что также позволяет обнаружить технику Атака "на понижение"), а в поле HostName указано, как выполняется PowerShell — локально или удаленно. Кроме того, события с ИД 400 могут указывать на время начала сеанса PowerShell, а с ИД 403 — на время его завершения.

IDDS0009Источник и компонент данныхПроцесс: Создание процессаОписание

Отслеживайте нестандартное использование Python или нетипичное поведение процесса python.exe — это может служить индикатором вредоносной активности. Чтобы избежать большого количества ложных срабатываний, важно знать стандартные модели использования. Если у обычных пользователей нет прав на выполнение сценариев, то любая попытка включить поддержку сценариев должна рассматриваться как подозрительная. Если использование сценариев в системе допустимо, но не является типичным, их выполнение вне цикла обновлений или других административных задач должно рассматриваться как подозрительное. По возможности сохраняйте сценарии, записанные в файловой системе, для последующего анализа действий и целей злоумышленников. Действия, выполняемые посредством сценариев, могут по-разному воздействовать на систему и генерировать события, отслеживаемые используемыми механизмами мониторинга. Отслеживайте запуск новых процессов, в которых могут использоваться команды и сценарии Python для выполнения вредоносного кода.

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

IDM1021НазваниеОграничения для веб-контентаОписание

Расширения, блокирующие сценарии, могут предотвратить выполнение JavaScript-сценариев и HTA-файлов, которые часто используются при эксплуатации уязвимостей. В случаях, когда вредоносный код содержится в рекламе, блокировщики рекламы могут предотвратить его выполнение.

IDM1026НазваниеУправление привилегированными учетными записямиОписание

Использование надлежащего управления идентификацией и доступом (IAM) с политиками управления доступом на основе ролей (RBAC) для ограничения действий администраторов и предоставления истории административных действий для обнаружения несанкционированного использования и злоупотреблений.

IDM1038НазваниеЗащита от выполненияОписание

Используйте контроль приложений, чтобы блокировать использование PowerShell CmdLets или других ресурсов на хосте для доступа к ресурсам облачного API.

IDM1040НазваниеПредотвращение некорректного поведенияОписание

В Windows 10 включите правила Attack Surface Reduction (ASR), чтобы предотвратить выполнение сценариев JavaScript с потенциально вредоносным загруженным содержимым.

IDM1042НазваниеОтключение или удаление компонента или программыОписание

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

Отключите/ограничьте службу WinRM, чтобы предотвратить использование PowerShell для удаленного выполнения.

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

Установите политику выполнения PowerShell так, чтобы выполнялись только подписанные сценарии.

IDM1049НазваниеАнтивирус или ПО для защиты от вредоносных программОписание

Антивирус может использоваться для автоматического помещения подозрительных файлов в карантин.