Эксфильтрация данных через 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.TA0001 Адаптация атак, связанных с ИИ

    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