T1218.015: Electron-приложения

Злоумышленники могут использовать компоненты фреймворка Electron для выполнения вредоносного кода. На базе фреймворка Electron построено множество популярных приложений, таких как Signal, Slack и Microsoft Teams. Electron разработан GitHub и представляет собой кросс-платформенный фреймворк для разработки компьютерных приложений с использованием JavaScript, HTML и CSS. Для отображения веб-контента используется движок Chromium, а для выполнения серверного кода — Node.js.

Функциональные особенности Electron (например, возможность выполнения произвольных команд приложениями) позволяют злоумышленникам запускать вредоносные функции в фоновом режиме, маскируя их под легитимные инструменты фреймворка. В частности, злоумышленники могут использовать процессы teams.exe и chrome.exe для выполнения вредоносных команд под видом дочерних процессов легитимного приложения (например, chrome.exe --disable-gpu-sandbox --gpu-launcher="C:\Windows\system32\cmd.exe /c calc.exe").

Злоумышленники также могут внедрять в приложения на базе Electron вредоносный код на языке JavaScript для выполнения вредоносных задач.

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

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

Отслеживайте процессы и параметры командной строки, связанные с выполнением бинарных файлов Electron-приложений, которые могут использоваться для запуска вредоносного содержимого. Сравнивайте недавние вызовы этих бинарных файлов с историей использования известных допустимых аргументов, чтобы выявить аномальную и потенциально вредоносную активность.

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

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

Отслеживайте команды с аргументами, которые могут использоваться для выполнения вредоносного содержимого через Electron-приложения. В частности, анализируйте команды, вызывающие приложения teams.exe или chrome.exe с целью выполнения вредоносного или аномального содержимого.

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

IDM1050НазваниеЗащита от эксплойтовОписание

Функция Microsoft Enhanced Mitigation Experience Toolkit (EMET) Attack Surface Reduction (ASR) может быть использована для блокирования методов использования доверенных бинарных файлов с целью обхода контроля приложений. Проследите, чтобы Electron был обновлен до последней версии, а критические уязвимости (например, обход nodeIntegration) — исправлены и не могли быть использованы.

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

Удалите или запретите доступ к ненужному и потенциально уязвимому программному обеспечению и функциям, чтобы предотвратить злоупотребления со стороны злоумышленников. Многие нативные бинарные файлы могут быть не нужны в конкретной среде: например, по возможности отключите интеграцию Node.js во всех рендерерах, отображающих удаленное содержимое, чтобы защитить пользователей, ограничив возможности злоумышленников по внедрению вредоносного JavaScript в приложения на базе Electron.

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

Там, где это возможно, обеспечьте целостность бинарных файлов и приложений с помощью проверки цифровой подписи, чтобы предотвратить выполнение недоверенного кода. Например, не используйте shell.openExternal с недоверенным содержимым.

По возможности установите nodeIntegration в false, что отключает доступ к функции Node.js. Отключение доступа к функции Node.js может ограничить возможность выполнения вредоносных команд путем внедрения JavaScript-кода.

Не отключайте webSecurity, чтобы пользователи приложения не могли вызывать вредоносное содержимое из онлайн-источников.