Эксфильтрация данных через MCP-сервер, используемый Cursor

Оригинал: Data Exfiltration via an MCP Server used by Cursor

Backslash Security Research Team продемонстрировала, что инструмент Model Context Protocol (MCP) может использоваться в качестве вектора косвенной промпт-инъекции против Cursor и потенциально приводить к выполнению вредоносных команд оболочки.

Backslash Security Research Team создала MCP-сервер для проверки концепции, способный выполнять скрейпинг веб-страниц. Когда пользователь просит Cursor использовать этот MCP-инструмент для скрейпинга сайта с вредоносным промптом, этот промпт попадает в контекст Cursor. Промпт предписывает Cursor выполнить команду оболочки для эксфильтрации конфигурационных файлов ИИ-агента жертвы, содержащих учетные данные. Перед выполнением вредоносной команды Cursor запрашивает подтверждение пользователя, что может снизить риск успешной атаки.

Процедура

  1. AML.TA0003 Подготовка ресурсов

    AML.T0065 Создание промптов для LLM

    Исследователи подготовили вредоносный промпт с инструкцией выполнить команду оболочки, которая эксфильтрирует учетные данные ИИ-агента пользователя-жертвы.
  2. AML.TA0003 Подготовка ресурсов

    AML.T0079 Размещение средств атаки

    Исследователи создали сайт, содержащий вредоносный промпт.
  3. AML.TA0007 Уклонение от защиты

    AML.T0068 Обфускация промпта LLM

    Вредоносный промпт был скрыт в HTML-теге title веб-страницы.
  4. AML.TA0003 Подготовка ресурсов

    AML.T0079 Размещение средств атаки

    Исследователи запустили веб-сервер для приема данных, эксфильтрированных из среды жертвы.
  5. AML.TA0004 Первичный доступ

    AML.T0078 Компрометация при посещении сайта

    Когда пользователь попросил Cursor использовать MCP-инструмент для извлечения содержимого вредоносного сайта, промпт был получен и добавлен в контекст Cursor.
  6. AML.TA0005 Выполнение

    AML.T0051.001 Косвенная промпт-инъекция

    При обработке вредоносного сайта MCP-сервер вернул внедренный промпт MCP-клиенту и отравил контекст LLM в Cursor. После этого Cursor выполнил промпт, встроенный в сайт.
  7. AML.TA0012 Повышение привилегий

    AML.T0053 Вызов инструментов ИИ-агента

    Промпт-инъекция задействовала возможность Cursor вызывать команды через инструмент run_terminal_cmd.

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

  8. AML.TA0007 Уклонение от защиты

    AML.T0068 Обфускация промпта LLM

    При обработке вредоносного сайта MCP-сервер вернул внедренный промпт MCP-клиенту и отравил контекст LLM в Cursor. Команда оболочки в промпте была скрыта с помощью кодирования base64, поэтому пользователю было сложнее понять, что может быть выполнено вредоносное действие.
  9. AML.TA0013 Доступ к учетным данным

    AML.T0083 Учетные данные из конфигурации ИИ-агента

    Команда оболочки нашла файлы учетных данных .openapi.apiKey и .cursor/mcp.json, входившие в конфигурацию Cursor.
  10. AML.TA0010 Эксфильтрация

    AML.T0086 Эксфильтрация через вызов инструмента ИИ-агента

    Файлы с учетными данными были эксфильтрированы на сервер исследователя командой curl, вызванной через инструмент Cursor run_terminal_cmd.
  11. AML.TA0011 Воздействие

    AML.T0048.000 Финансовый ущерб

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

Источники

  1. Simulating a Context-Poisoning Vulnerable MCP Server: A POC