Экосистема MCP росла быстро — безопасность не успевала
Model Context Protocol был запущен в конце 2024 года. Менее чем за 18 месяцев он стал стандартным способом подключения ИИ-инструментов к внешним системам. К марту 2026 года экосистема охватывает коннекторы к базам данных, файловые серверы, мосты к GitHub, Slack-клиенты, почтовые инструменты и сотни специализированных серверов.
Кривая роста крутая. С безопасностью — другая картина.
По состоянию на март 2026 года более 8 000 MCP-серверов доступны из открытого интернета. Исследователи обнаружили 492 с нулевой аутентификацией — без API-ключа, без OAuth, без IP-фильтра. К ним может обратиться любой HTTP-клиент. 36,7% проверенных серверов уязвимы к SSRF (подделка серверных запросов). Это означает: атакующий, контролирующий ввод инструмента, может получить доступ к ресурсам внутренней сети.
За тот же период за 60 дней было подано более 30 CVE. Такая скорость свидетельствует о том, насколько нова экосистема и сколько внимания уделяют ей исследователи.
Почему протокол создаёт риски для персональных данных
MCP даёт ИИ-ассистентам возможность работать с данными. Именно поэтому он и представляет риск для персональных данных.
Когда разработчик использует Cursor или Claude Desktop с коннектором к базе данных, ИИ пишет SQL из обычного текста. Эти запросы возвращают реальные строки — имена, электронные адреса, платёжные данные и другие персональные сведения. Данные проходят по цепочке:
- Сервер базы данных → контекстное окно ИИ-ассистента
- Контекстное окно → системы логирования провайдера модели
- История разговора → локальная машина разработчика
- Отладочные сессии → другие ИИ-инструменты при копировании контекста
Ни один из этих шагов не является взломом. Так система и работает. Но персональные данные оказываются во множестве мест, не предназначенных для их хранения, часто без шифрования между сервером и ИИ-клиентом.
CVE-2026-25253 (CVSS 8.8), опубликованная в феврале 2026 года, показала один из векторов атаки. Вредоносная конечная точка могла внедрить скрытые инструкции в свои ответы. Эти инструкции говорили подключённому ИИ извлечь данные из других активных инструментов. Разработчик, использующий стороннюю конечную точку рядом со своим собственным коннектором к базе данных, мог слить всю базу.
492 сервера без аутентификации
492 открытых сервера — это проблема, отличная от CVE-2026-25253. Их не взломали. Их настроили неправильно.
Большинство предназначались для локального запуска. Кто-то открыл их через проброс портов или облачный деплой без контроля доступа.
Что чаще всего открывают эти серверы:
- Инструменты для работы с файловой системой с доступом на чтение домашних папок
- Коннекторы к базам данных с реальными учётными данными в конфигурации
- Почтовые инструменты, привязанные к реальным почтовым ящикам
- Инструменты выполнения кода — произвольный код, без аутентификации, без ограничений
Разработчики почти наверняка не собирались их открывать. Но Cursor и Claude Desktop подключаются к любому URL в конфигурации. Встроенной проверки, локальный это хост или публичный, нет.
Решение anonym.legal для MCP
Системное решение для рисков персональных данных в конвейерах инструментов — анонимизировать данные до того, как они достигают любого вызова, отправляющего их в LLM. Именно это обеспечивает MCP-сервер anonym.legal.
Он предоставляет 7 инструментов:
| Инструмент | Назначение |
|---|---|
analyze_text | Обнаружить сущности персональных данных и вернуть их позиции и типы |
anonymize_text | Удалить или псевдонимизировать обнаруженные персональные данные |
deanonymize_text | Обратить псевдонимизацию с помощью вашего ключа шифрования |
anonymize_batch | Обработать несколько текстов за один вызов |
get_supported_entities | Перечислить все 285+ типов сущностей для заданного языка |
get_supported_languages | Перечислить все 48 поддерживаемых языков |
health_check | Проверить подключение |
Когда ИИ-ассистент настроен с сервером anonym.legal и коннектором к базе данных, разработчик может указать: «Перед отображением любых клиентских данных вызывай anonymize_text для результата.» ИИ берёт на себя оркестрацию. Персональные данные никогда не попадают в видимый вывод или историю разговора в идентифицируемом виде.
Настройка в Cursor IDE
Чтобы добавить сервер anonym.legal в Cursor:
// .cursor/mcp.json
{
"mcpServers": {
"anonym-legal": {
"url": "https://anonym.legal/mcp",
"transport": "sse",
"headers": {
"Authorization": "Bearer ВАШ_API_КЛЮЧ"
}
}
}
}
После настройки спросите Cursor: «Проанализируй это обращение в поддержку на наличие персональных данных перед тем, как я вставлю его в трекер.» Cursor вызовет analyze_text, вернёт список сущностей, и вы решите, стоит ли анонимизировать перед вставкой.
Настройка в Claude Desktop
// claude_desktop_config.json
{
"mcpServers": {
"anonym-legal": {
"command": "npx",
"args": ["-y", "@anonym-legal/mcp-server"],
"env": {
"ANONYM_API_KEY": "ВАШ_API_КЛЮЧ"
}
}
}
}
С этой конфигурацией Claude Desktop может анонимизировать любой текст перед включением его в вызовы инструментов, отправляемых на другие серверы. Анонимизация выполняется в вашей сессии. Персональные данные никогда не достигают серверов Anthropic в идентифицируемом виде.
Усиление защиты вашей установки
Помимо использования anonym.legal, примените следующие меры. Подробности — на странице обзора безопасности и в центре соответствия.
Проверьте список инструментов. Просмотрите каждую запись в конфигурации. Для каждой спросите: доверяете ли вы оператору? Знаете ли вы, к каким данным он имеет доступ?
Предпочитайте локальные серверы удалённым. Локальные серверы работают через stdio. Они не создают сетевой экспозиции. Используйте удалённые серверы только когда нет локальной альтернативы.
Проверьте аутентификацию. Каждый удалённый сервер должен требовать API-ключ или OAuth-токен. Если не требует — не используйте его с реальными пользовательскими данными.
Разделите разработку и продакшн. Используйте отдельные конфигурации для разработки (тестовые данные, без персональных данных) и для любых потоков, работающих с реальными пользователями.
Включите аудит-логирование. Если сервер поддерживает логи — включите их. Знайте, какие данные прошли через каждый вызов.
Полный список типов сущностей и языков — на странице функций MCP.
Более 30 CVE за 60 дней показывают, что протокол находится под активным исследовательским прицелом. Новые уязвимости появятся. Но базовая защита — анонимизировать до того, как данные достигнут любого LLM-вызова — работает против любого конкретного CVE, который появится в будущем.
Настроить сервер anonym.legal в Cursor →
anonym.legal выполняет анонимизацию персональных данных на стороне сервера с использованием вашего ключа шифрования. Псевдонимизированные данные обратимы только с помощью этого ключа. Издаётся anonym.legal, сертифицирован по ISO 27001.
Источники
- Данные об открытых MCP-серверах от Shodan, март 2026 — 8 000+ серверов, 492 без аутентификации
- CVE-2026-25253, CVSS 8.8, межсерверное внедрение через Model Context Protocol
- Данные об SSRF: исследовательское сканирование публично доступных конечных точек, март 2026
- Спецификация Anthropic MCP v1.2, раздел о соображениях безопасности