Vercel Sandbox: безопасная подстановка HTTP-заголовков для AI-агентов

Vercel Sandbox получил новую функцию, которая автоматически внедряет HTTP-заголовки в исходящие запросы из изолированного кода. Это решает ключевую проблему безопасности для AI-агентов и других сценариев, где код выполняется в песочнице, но требует доступа к внешним сервисам с аутентификацией. Тепер

Vercel Sandbox: безопасная подстановка HTTP-заголовков для AI-агентов

Vercel Sandbox получил новую функцию, которая автоматически внедряет HTTP-заголовки в исходящие запросы из изолированного кода. Это решает ключевую проблему безопасности для AI-агентов и других сценариев, где код выполняется в песочнице, но требует доступа к внешним сервисам с аутентификацией. Теперь credentials никогда не попадают внутрь виртуальной машины, что предотвращает их утечку даже при компрометации агента.

Как работает подстановка заголовков в Vercel Sandbox

Механизм основан на конфигурации сетевой политики с помощью объекта transform. Когда sandbox отправляет HTTPS-запрос на соответствующий домен, межсетевой экран добавляет или заменяет указанные заголовки перед отправкой запроса. Сами credentials существуют только на уровне межсетевого экрана, вне изолированной среды. Функция предназначена в первую очередь для AI-агентов, где угроза prompt injection особенно актуальна. Даже если агент скомпрометирован, злоумышленник не сможет извлечь credentials, так как они физически находятся за пределами sandbox. Заголовки полностью заменяют любые заголовки с тем же именем, установленные кодом внутри песочницы, что предотвращает подмену credentials.

Подстановка поддерживает точные домены и wildcard-шаблоны, например .github.com. Правило срабатывает только при совпадении домена в исходящем запросе. Важно, что функция работает со всеми конфигурациями egress-политик: от полного доступа к интернету до строгих списков разрешённых доменов. Это даёт гибкость в настройке безопасности.

Какие угрозы безопасности решает подстановка заголовков?

Главная угроза — prompt injection, когда злоумышленник внедряет вредоносные инструкции в AI-агента, заставляя его отправить credentials на внешний сервер. Традиционные подходы требуют передачи токенов внутрь sandbox, что создаёт риск утечки. Новая функция Vercel устраняет этот риск, размещая credentials вне песочницы. Кроме того, подстановка заголовков защищает от атак, связанных с подменой заголовков внутри кода, так как все заголовки, установленные в sandbox, перезаписываются политикой.

Предыстория и контекст

Vercel Sandbox — это изолированная среда выполнения, которую компания предлагает для безопасного запуска непроверенного кода. Ранее разработчики были вынуждены либо передавать credentials в sandbox, рискуя их утечкой, либо реализовывать сложные прокси-серверы. Новая функция устраняет эту дилемму, позволяя использовать простую декларативную конфигурацию. Решение особенно актуально на фоне роста популярности AI-агентов, которые часто выполняют код, полученный из внешних источников. Prompt-атаки позволяют инжектировать вредоносные инструкции, которые могут заставить агента отправить credentials злоумышленнику. Vercel предлагает архитектурный подход: credentials никогда не попадают в среду, где выполняется потенциально опасный код.

Как это работает: технические детали

Настройка подстановки заголовков происходит через network policy с использованием transform. Пример конфигурации для доступа к API GitHub с токеном:

{ "allow": [""], "transform": { ".github.com": { "headers": { "Authorization": "Bearer ghpxxxx" } } } }

В этом примере разрешён любой исходящий трафик, но для запросов к GitHub автоматически добавляется заголовок Authorization. Политики можно обновлять на лету, без перезапуска sandbox. Это позволяет реализовать многофазовые сценарии: сначала внедрить credentials для инициализации, затем удалить их перед запуском непроверенного кода. Важно отметить, что подстановка работает только для HTTPS-запросов, так как HTTP-трафик может быть перехвачен.

Кого затронет и как

Новая функция доступна всем клиентам Pro и Enterprise. Основные пользователи — разработчики AI-агентов, платформ для выполнения кода, например образовательные сервисы, а также компании, которые запускают непроверенный код в изолированных средах. Для них это означает значительное повышение безопасности без дополнительных усилий по настройке прокси. В контексте российского рынка функция может быть полезна для SaaS-платформ, предоставляющих API с аутентификацией, а также для компаний, разрабатывающих AI-решения. Однако стоит учитывать, что Vercel Sandbox — облачный сервис, и его использование может быть ограничено требованиями к локальному хранению данных.

Что будет дальше

Vercel продолжает развивать Sandbox как безопасную среду для выполнения кода. В ближайших планах — вероятно, расширение типов поддерживаемых трансформаций, например подмена URL или тела запроса. Также можно ожидать интеграции с популярными AI-фреймворками и провайдерами LLM. Разработчикам стоит изучить документацию Vercel Sandbox и протестировать новую функцию в своих проектах. Важно помнить, что подстановка заголовков работает только для HTTPS-запросов, так как HTTP-трафик может быть перехвачен.

Итог

Vercel Sandbox с функцией подстановки HTTP-заголовков предлагает элегантное решение давней проблемы безопасного хранения credentials в изолированных средах. Это особенно важно для AI-агентов, где угроза prompt injection растёт с каждым днём. Функция уже доступна и готова к использованию — остаётся лишь настроить политики и забыть о риске утечки токенов.