Инструменты WebMCP, которые вы предоставляете агентам, могут быть использованы для их перехвата

Инструменты WebMCP, которые вы предоставляете агентам, могут быть использованы для их перехвата

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

<п>Добавьте WebMCP на свой веб-сайт, и вы передаете посещающим AI-агентам набор именованных инструментов для вызова. Те же самые инструменты можно использовать, чтобы настроить агентов против людей, которые их послали. На сайте разработчиков Chrome теперь размещены рекомендации по безопасности для WebMCP, и большая их часть написана для веб-сайтов, предоставляющих инструменты, а не для компаний, создающих агенты. Подготовьте свой веб-сайт к агенту с помощью WebMCP, и вы также откроете поверхность атаки, и закрытие ее – ваша работа, а не агента.

<п>В течение двух лет разговор о готовности агента велся вокруг доступа: может ли агент получить доступ к вашему контенту, прочитать вашу страницу, завершить оформление заказа? WebMCP — это версия, в которой вы перестаете надеяться, что агент вычислит ваш веб-сайт по разметке, и начнете передавать ему названные инструменты для вызова. Это более полезный протокол, и именно в этом направлении движется уровень протокола агентской сети. Здесь также читаемость для агента и безопасность для агента перестают быть одним и тем же свойством.

Chrome назвал два способа взлома агентов через WebMCP

<п>Второй вектор — это тот, который на самом деле поражает большинство веб-сайтов, и для него вообще не нужен вредоносный веб-сайт. Chrome называет это зараженным выводом: «Ответы инструментов в реальном времени с сайтов, заслуживающих доверия, могут включать вредоносные инструкции как часть сторонних данных, таких как комментарии пользователей». Инструмент на вашем веб-сайте, который возвращает ваши обзоры продуктов, ваши ветки комментариев, ваши сообщения на форуме или ваши ответы в службе поддержки, возвращает текст, написанный другими людьми. Если один из этих людей разместил инструкцию в обзоре, ваш законный инструмент передаст ее агенту, как если бы она исходила от вас. Полезная нагрузка — это ваш собственный пользовательский контент, и вы пригласили его.

<п>Это работает из-за чего-то, что не является ошибкой и не будет исправлено. “LLM рассматривают весь текст, инструкции и пользовательские данные как единую последовательность токенов” в руководстве говорится, что модель не может надежно отделить часть, которую вы имели в виду как данные, от части, которую злоумышленник имел в виду как команду. Вот почему Chrome говорит: «Вероятностная природа LLM делает невозможным гарантировать безопасность внутри самой модели». Это та же самая проблема быстрого внедрения, которая не имеет четкого решения внутри модели, но теперь имеет протокол. WebMCP предоставляет этой атаке чистый, структурированный маршрут доставки с помощью инструментов, которые вы специально опубликовали.

Подготовка веб-сайта к работе с агентом теперь включает обеспечение его безопасности для агентов

<п>Руководство Chrome налагает обязательства на веб-сайт, а не только на агента. Документ о безопасности инструментов Chrome открывается строкой, направленной прямо на того, кто предоставляет инструменты: “Предоставляйте свои инструменты только тем источникам, которым вы доверяете. Это особенно важно, когда инструменты управляют пользовательскими данными или иным образом влияют на пользователя». Эта строка написана для тех, кто отправляет инструмент. Это значит, что ты.

Защита конкретна и представляет собой аннотации, которые вы прикрепляете к поставляемым вами инструментам. untrustedContentHint “явно помечает полезную нагрузку как ненадежную, чтобы помочь защитить целостность вашего сайта, одновременно давая агенту сигнал о том, что эти данные требуют более тщательного изучения” и Chrome говорит, когда его использовать: “Если инструмент возвращает пользовательский контент (UGC) или данные из внешних источников, рассмотрите возможность добавления untrustedContentHint к инструменту.” readOnlyHint отмечает инструмент, который не меняет состояние, что “позволяет агенту принимать более обоснованные решения о том, когда запрашивать подтверждения пользователя” ExposedTo ограничивает инструмент массивом источников, которым вы доверяете, записанным в самой регистрации:

<п>document.modelContext.registerTool({…}, { подвергается воздействию: [‘https://trusted.com’] }); <п>Chrome также ограничивает бюджет символов: описание инструмента — 500 символами, а вывод одного инструмента — примерно 1500, а также добавляет путь requestUserInteraction() для подтверждения действия перед его запуском. Возьмем очевидный пример: инструмент, который передает отзывы о продуктах торговому агенту. Обеспечение его безопасности — не экзотическая работа: пометьте его вывод с помощью untrustedContentHint, установите readOnlyHint, поскольку он читает, а не покупает, и ограничьте ExposedTo источниками, которые вы фактически обслуживаете. Все это не входит в обязанности агента. Это работа автора инструмента, и в большинстве команд это специалисты по Интернету, CRO или маркетологи, добавляющие WebMCP, чтобы выглядеть актуально, а не специалисты по безопасности, которые читают модели угроз. Именно в этом пробеле все идет не так. Отметка того, какой из вашего контента является данными, а не командами, теперь является частью поставки инструмента, так же, как очистка ввода стала частью доставки формы.

Внедряйте WebMCP, но сначала моделируйте каждый инструмент

Предоставление агенту явных вызываемых инструментов лучше, чем попытка угадать ваш веб-сайт по DOM, и эта возможность того стоит. Ничто из этого не является причиной избегать WebMCP. Это уже и скучнее, чем «новый протокол, новая опасность»: возможность приходит со счетом, и счет ваш.

Итак, линия проста. Не предоставляйте агенту инструмент, для которого вы не смоделировали угрозы так, как вы моделируете угрозы для конечной точки общедоступного API. Перед отправкой каждого инструмента, который вы собираетесь зарегистрировать, ответьте на один вопрос: какой ненадежный контент он может вернуть, и отметили ли вы его? Если вы не можете ответить на этот вопрос, значит инструмент не готов, как бы готовой для агента ни выглядела остальная часть вашего веб-сайта.

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

Этот пост был первоначально опубликован на No Hacks.

Back To Top