- Зачем агентам браузера и работы с компьютером нужна песочница
- Что изолировать в сессии браузера
- Как обрабатывать файлы cookie, аккаунты и учетные данные
- Как ограничить загрузки, файлы и данные буфера обмена
- Как логировать DOM-действия, скриншоты и трейсы воспроизведения
- Как установить границы сети, одобрения и сброса
- Как Novita Agent Sandbox соответствует этой оценке
- Контрольный список для песочницы браузера и работы с компьютером
- Часто задаваемые вопросы
- Рекомендуемые статьи
Песочницы для браузера и работы с компьютером должны изолировать сессии, файловую систему и загрузки, учетные данные, файлы cookie, сетевой доступ, действия инструментов, скриншоты и записи, логи, а также состояние сброса, чтобы ИИ-агенты не могли незаметно расширять свою границу доверия при работе с веб-сайтами, приложениями и файлами.
Зачем агентам браузера и работы с компьютером нужна песочница
Агенты для работы с браузером и компьютером отличаются от обычных чат-ботов. Они не просто отвечают на вопрос; они нажимают, печатают, загружают файлы, читают веб-страницы, заполняют формы, а иногда и управляют полноценной средой рабочего стола. Это делает среду выполнения частью модели безопасности.
Текстовый ассистент может дать неверный ответ. Агент для браузера или компьютера может совершить неверное действие. Он может отправить форму, утечь сессионный файл cookie в лог, загрузить небезопасный файл, перезаписать рабочее пространство, выполнить инъекцию промптов, спрятанную в веб-странице, или использовать учетные данные в контексте, где они не должны быть доступны.
Песочница — это место, где эти действия ограничены. Она должна отвечать на практические вопросы:
- В какой аккаунт выполнен вход в браузере?
- Какие файлы агент может читать или записывать?
- С какими доменами может связываться агент?
- Какие файлы cookie и токены сохраняются после выполнения задачи?
- Какие клики, команды, скриншоты и изменения файлов можно просмотреть позже?
- Что уничтожается, когда задача завершается?
Цель — не делать вид, что песочница устраняет все риски. Цель — сделать среду работы агента узкой, наблюдаемой и сбрасываемой. Когда модель или инструмент принимает неверное решение, радиус поражения должен быть ограничен сессией и ресурсами, которые вы намеренно открыли.
Что изолировать в сессии браузера
Начните с профиля браузера. Агент браузера не должен использовать ежедневный профиль разработчика, личные расширения, сохраненные пароли, постоянные файлы cookie или неуправляемую директорию загрузок. Выдавайте каждой задаче, пользователю или рабочему процессу свой собственный границу профиля, если только нет намеренной причины для совместного использования состояния.
Как минимум оцените, разделяет ли песочница:
| Граница | Что может пойти не так без нее | Что проверить |
|---|---|---|
| Профиль браузера | Агент наследует несвязанные логины, расширения, файлы cookie, автозаполнение или историю просмотров. | Профили для каждой задачи или пользователя, явные правила хранения, контроль расширений. |
| Жизненный цикл сессии | Состояние предыдущей задачи изменяет результат следующей. | Создание новой сессии, восстановление из снимка, очистка и поведение истечения. |
| Вкладки и окна | Агент читает или нажимает содержимое из неправильного контекста. | Область видимости вкладок, отслеживание активного окна и журналы событий. |
| Хранилище браузера | LocalStorage, IndexedDB, кэш и сервис-воркеры сохраняют конфиденциальное состояние. | Сброс хранилища, правила экспорта и очистка в рамках домена. |
| Загрузки | Файлы из Интернета попадают в общую директорию. | Изолированная папка загрузок, политика типов файлов, при необходимости — рабочий процесс сканирования на вредоносное ПО. |
Относитесь к браузеру как к рабочему пространству, а не как к одноразовой обертке UI. Современные веб-приложения хранят значительное состояние в файлах cookie, локальном хранилище, кэшах, сервис-воркерах, фоновых запросах и загруженных файлах. Если песочница только открывает окно браузера, но не определяет, что происходит с этим состоянием, граница изоляции неполна.
Для сред работы с компьютером тот же принцип выходит за пределы браузера. Агент может взаимодействовать с терминалом, файловым менеджером, редактором документов, локальным сервером предварительного просмотра или GUI-приложением. Эта среда требует ограниченной домашней директории, четких точек монтирования и способа отделять артефакты задачи от внутренних компонентов среды выполнения.
Как обрабатывать файлы cookie, аккаунты и учетные данные
Файлы cookie и аккаунты, в которые выполнен вход, часто являются самой чувствительной частью автоматизации браузера. Агент браузера с действующей сессией может выполнять все, что разрешено аккаунту, даже если модель никогда не видит исходный пароль.
Используйте отдельный аккаунт для работы агента, где это возможно. Аккаунт должен иметь минимальные разрешения, необходимые для рабочего процесса, а песочница должна четко показывать, внедряются ли файлы cookie, создаются ли они при входе, сохраняются ли между запусками или уничтожаются после завершения.
Обработка учетных данных требует более строгого правила: никогда не предоставляйте агенту широкие секреты только потому, что веб-сайт может их запросить. Предпочитайте ограниченные по области действия токены с ограниченным сроком действия, учетные данные для каждого рабочего процесса и брокерский доступ, где агент вызывает узкий инструмент, а не читает сырой секрет. Если секрет должен быть доступен внутри песочницы, решите, появляется ли он как переменная окружения, смонтированный файл, учетные данные браузера или возможность, доступная только через инструмент.
Следите за этими анти-паттернами:
- Общий профиль браузера с личными или административными файлами cookie.
- Секреты, вставленные на страницу моделью без одобрения.
- Ключи API, доступные всем инструментам в песочнице.
- Сессионные файлы cookie, захваченные в полноэкранных скриншотах или отладочных логах.
- Автозаполнение форм, включенное для производственных аккаунтов.
- Долгоживущие учетные данные, оставленные в загруженных файлах, истории оболочки или хранилище браузера.
Руководство OWASP для LLM-приложений выделяет инъекцию промптов и чрезмерную агентность как повторяющиеся риски в агентных системах. Для агентов браузера эти риски напрямую встречаются с вебом: страница может содержать инструкции, которые пытаются повлиять на модель, а модель может иметь инструменты, выполняющие реальные действия. Изоляция дает вам вторую линию обороны, когда следование инструкциям недостаточно.
Как ограничить загрузки, файлы и данные буфера обмена
Загрузки — это граница доверия. Агент браузера может сохранять PDF, электронные таблицы, архивы, скриншоты, счета, артефакты сборки или исполняемые файлы. Эти файлы должны попадать в директорию, принадлежащую песочнице, а не в общую папку рабочего стола или производственное рабочее пространство.
Практическая политика загрузок должна охватывать:
- Разрешенные типы файлов и максимальный размер файла.
- Могут ли загруженные файлы открываться автоматически.
- Могут ли файлы быть загружены на другой сайт.
- Как файлы сканируются, хэшируются или логируются.
- Какие файлы экспортируются из песочницы в конце выполнения.
- Как временные файлы удаляются.
Для агентов работы с компьютером границы файлов имеют еще большее значение, потому что агент может создавать или изменять локальные файлы в рамках задачи. Агент-кодер может редактировать репозиторий. Агент для данных может создавать диаграммы. Агент браузера может загрузить CSV, преобразовать его и загрузить результат. Каждый путь должен быть явным: где поступают входные данные, где живут рабочие файлы, куда экспортируются одобренные выходные данные и что стирается.
Доступ к буферу обмена заслуживает отдельного решения. Он удобен для автоматизации GUI, но также может перемещать конфиденциальный текст между несвязанными приложениями. Если агент может читать буфер обмена, он может увидеть токен, скопированный человеком несколькими секундами ранее. Если он может записывать в буфер обмена, он может повлиять на следующее действие вставки человека. В чувствительных рабочих процессах сделайте доступ к буферу обмена локальным для сессии или требуйте явного разрешения перед пересечением границы человек-песочница.
Взаимодействие с экраном имеет аналогичную проблему. Агенты работы с компьютером работают на основе скриншотов, деревьев доступности или отрисованного состояния UI. Скриншоты могут содержать личные данные, имена аккаунтов, токены, текст документа или записи клиентов. Решите, сохраняются ли скриншоты, редактируются ли, передаются ли провайдеру модели или хранятся для воспроизведения. Не относитесь к ним как к безобидным отладочным изображениям.
Как логировать DOM-действия, скриншоты и трейсы воспроизведения
Песочница браузера должна делать действия проверяемыми. Когда агент нажимает кнопку или отправляет форму, команда безопасности или разработчик должны иметь возможность восстановить произошедшее без догадок, основанных на конечном результате.
Для автоматизации браузера полезные логи включают:
- Посещенный URL и источник.
- DOM-селектор или цель доступности, использованные для каждого действия.
- Введенный текст с редактированием секретов.
- События отправки формы.
- Начатые и завершенные загрузки.
- Сетевые запросы на уровне домена или конечной точки.
- Ошибки консоли и ошибки страницы.
- Контрольные точки скриншотов до или после чувствительных шагов.
Для автоматизации работы с компьютером добавьте вызовы инструментов, запуски процессов, команды оболочки, чтение и запись файлов, изменения фокуса окна и экспортированные артефакты. Лог должен различать, что запросила модель, что выполнил уровень автоматизации и что вернула среда. Это различие важно при отладке инъекции промптов, нестабильного поведения UI или ошибки обертки инструмента.
Воспроизведение полезно, но оно меняет вопрос хранения данных. Полный трейс воспроизведения может включать скриншоты, текст страницы, содержимое форм, имена файлов, вывод терминала и учетные данные, если не встроено редактирование. Решите заранее, кто может получить доступ к воспроизведениям, как долго они хранятся и маскируются ли чувствительные значения перед хранением.
Правильный уровень детализации зависит от рабочего процесса. Публичный агент мониторинга цен может нуждаться в легковесных логах. Агент, который касается клиентских аккаунтов, страниц биллинга, консолей инфраструктуры или внутренних инструментов, требует более строгих аудиторских следов и более строгих контролей хранения.
Как установить границы сети, одобрения и сброса
Сетевой доступ — это то, где песочница браузера может незаметно расшириться. Задача может начаться с одного веб-сайта, затем загрузить скрипты третьих сторон, следовать перенаправлениям, вызывать API, загружать пакеты или достигать внутренних доменов. Если песочница имеет широкий исходящий доступ, агент может перемещать данные в места, которые владелец приложения не ожидал.
Для агентов браузера и работы с компьютером рассмотрите:
- Белые списки доменов для ожидаемых веб-целей.
- Блоки для внутренних метаданных сервисов и частных сетевых диапазонов.
- Отдельная политика для реестров пакетов, объектного хранилища и веб-поиска.
- DNS-логирование, если это требуется для проверки безопасности.
- Исходящие логи, которые можно привязать к сессии и задаче.
Человеческое одобрение должно стоять перед действиями, которые трудно отменить или которые имеют юридическое значение. Примеры: совершение покупок, отправка сообщений, изменение настроек аккаунта, удаление файлов, ротация учетных данных, приглашение пользователей, открытие тикетов поддержки или загрузка клиентских данных. Событие одобрения должно фиксировать, что агент намеревается сделать, какую страницу или файл оно затрагивает, и точное одобренное действие.
Поведение сброса — это последняя граница. Хорошая песочница должна четко показывать, что происходит, когда задача завершается:
| Состояние | Вопрос сброса |
|---|---|
| Файлы cookie браузера | Уничтожаются, сохраняются или создаются контрольные точки? |
| Хранилище браузера | Очищается ли кэш, локальное хранилище, IndexedDB и состояние сервис-воркеров? |
| Загрузки | Удаляются ли файлы, сохраняются для проверки или экспортируются в контролируемое место? |
| Учетные данные | Отзываются, ротируются или удаляются ли токены из среды? |
| Логи и воспроизведение | Что сохраняется, редактируется и как долго? |
| Сетевой доступ | Удаляются ли временные белые списки или прокси-учетные данные? |
| Файловая система | Стирается ли рабочее пространство, создается ли снимок или повторно используется? |
Постоянные сессии полезны для долго работающих агентов, но сохранение должно быть намеренным. Если профиль браузера, файловая система или состояние процесса сохраняются между запусками, документируйте, почему оно сохраняется и кто может его сбросить.
Как Novita Agent Sandbox соответствует этой оценке
Novita Agent Sandbox предназначен для выполнения рабочих нагрузок ИИ-агентов в изолированных облачных средах. На странице продукта описана поддержка выполнения кода, использования браузера, использования компьютера, постоянных сессий, просмотра сессий в реальном времени и многократно используемых шаблонов. Документация по быстрому старту Novita Agent Sandbox показывает, как разработчики могут создать песочницу, выполнять команды, работать с файлами и управлять песочницей через SDK.
Эти возможности делают Novita актуальным, когда вы оцениваете рабочие процессы с агентами браузера, кодирования, анализа данных и долго работающими агентами. Оценка все равно должна быть специфичной для вашей модели угроз. Прежде чем использовать любого провайдера песочниц для чувствительной автоматизации браузера или работы с компьютером, подтвердите точное поведение, необходимое вам в отношении профилей браузера, файлов cookie, внедрения учетных данных, исходящего сетевого трафика, хранения скриншотов, экспорта файлов, логов и семантики сброса.
Для команд, уже использующих модели Novita AI, практическое преимущество — операционная интеграция: вывод и выполнение агента могут быть спланированы в рамках одной платформы сборщика, а не рассматриваться как отдельные инфраструктурные решения. Однако отделяйте заявления о продукте от предположений безопасности. Песочница может предоставить полезную изоляцию и контроли жизненного цикла, но ваше приложение все равно нуждается в аккаунтах с минимальными привилегиями, ограниченных учетных данных, шлюзах одобрения и правилах аудита для действий, выполняемых вашим агентом.
Контрольный список для песочницы браузера и работы с компьютером
Используйте этот контрольный список перед тем, как предоставить агенту доступ к реальному веб-сайту, аккаунту или рабочему пространству рабочего стола.
| Область | Вопрос для оценки |
|---|---|
| Сессия | Получает ли каждая задача изолированный профиль браузера или рабочее пространство? |
| Аккаунты | Использует ли агент аккаунт с минимальными привилегиями, а не основной аккаунт человека? |
| Файлы cookie | Ограничены ли файлы cookie по области, сохраняются ли намеренно и очищаются ли при сбросе? |
| Учетные данные | Ограничены ли секреты по области, имеют ли ограниченный срок действия, редактируются ли в логах и недоступны ли для несвязанных инструментов? |
| Загрузки | Остаются ли файлы внутри директории, принадлежащей песочнице, до явного экспорта? |
| Буфер обмена | Может ли агент читать или записывать человеческий буфер обмена, или только локальный для сессии? |
| Скриншоты | Сохраняются ли скриншоты, редактируются ли и контролируется ли доступ к ним? |
| DOM-действия | Логируются ли клики, введенный текст, формы, селекторы и источники страниц? |
| Вызовы инструментов | Можете ли вы отделить намерение модели от выполненного действия инструмента? |
| Сеть | Контролируются ли домены, частные диапазоны, реестры пакетов и поведение DNS? |
| Одобрение | Какие действия требуют шага подтверждения человеком? |
| Сброс | Что именно стирается, сохраняется, отзывается или снимается после выполнения? |
| Расследование инцидентов | Можете ли вы восстановить произошедшее из логов, файлов, сетевых событий и воспроизведения? |
Часто задаваемые вопросы
В чем разница между песочницей браузера и песочницей работы с компьютером?
Песочница браузера ограничивает то, что может делать веб-браузер: какие профили, файлы cookie и хранилище доступны, с какими доменами браузер может связываться и какие загрузки разрешены. Песочница работы с компьютером шире и охватывает полноценную среду рабочего стола — доступ к терминалу, файловые менеджеры, GUI-приложения и локальные процессы в дополнение к браузеру. Оба разделяют одни и те же основные проблемы, касающиеся сброса, логирования, ограничения учетных данных и аккаунтов с минимальными привилегиями, но среды работы с компьютером требуют дополнительных решений относительно смонтированных директорий, доступа к буферу обмена, данных экрана и изоляции процессов.
Нужен ли мне отдельный профиль браузера для каждой задачи агента?
В большинстве случаев да. Совместное использование профиля между задачами означает, что одна задача может видеть файлы cookie, логины, сохраненные пароли и хранилище браузера, оставленные другой. Профили для каждой задачи — самый простой способ предотвратить непреднамеренный перенос состояния. Если ваш рабочий процесс требует сохранения сессии — например, долго работающий агент, который продолжает с того места, где остановился, — сделайте сохранение явным и задокументируйте, какое именно состояние переносится и почему.
Могут ли ИИ-агенты безопасно обрабатывать учетные данные внутри песочницы?
Учетные данные безопаснее внутри песочницы, чем в неконтролируемой среде, но сама по себе песочница не делает обработку учетных данных безопасной. Основные риски: чрезмерная доступность (предоставление агенту большего доступа, чем требуется для задачи), утечка (учетные данные, появляющиеся в логах, скриншотах или отладочном выводе) и сохранение (токены или файлы cookie, остающиеся доступными после завершения задачи). Предпочитайте ограниченные по области, временные учетные данные; организуйте доступ через узкие вызовы инструментов, а не сырые секреты; и убедитесь, что логи и скриншоты редактируют чувствительные значения перед хранением.
Что произойдет, если ИИ-агент загрузит вредоносный файл?
Политика загрузок песочницы определяет радиус поражения. Если загрузки изолированы в директорию, принадлежащую песочнице, автозапуск отключен и действуют ограничения типов файлов, загруженный файл не может запуститься автоматически или достичь более широкой файловой системы. Без этих контролей вредоносный файл может выполниться, достичь общих директорий или быть загружен в другое место до того, как человек его проверит. Относитесь к загрузкам как к потенциально недоверенному вводу и определите явные политики: какие типы файлов разрешены, могут ли они быть открыты внутри песочницы и как они сканируются или логируются.
Как обнаружить инъекцию промптов в агенте браузера?
Инъекцию промптов с веб-страницы сложно надежно обнаружить на уровне модели. Песочница является одним из основных защитных контролей, потому что она ограничивает то, что может сделать агент, даже если вредоносная инструкция выполнена. Практические сигналы включают неожиданные вызовы инструментов или навигацию, действия вне целевого домена, необычные отправки форм и попытки получить или передать учетные данные или данные сессии. Хорошие логи DOM-действий — запись того, какая страница была посещена, какие селекторы были целевыми и какой текст был введен — облегчают восстановление того, повлияла ли страница на поведение агента.
Означает ли использование песочницы, что мой агент защищен?
Песочница сужает радиус поражения, но не устраняет риск. Она ограничивает то, к чему агент может получить доступ, и что переживает сброс, но не предотвращает плохие решения модели, неправильно настроенные учетные данные или уязвимости на уровне приложения. Безопасность зависит от многоуровневых контролей: аккаунты с минимальными привилегиями, ограниченные учетные данные, шлюзы одобрения для необратимых действий, аудиторские логи, фиксирующие намерение модели и выполненные действия, и человеческая проверка перед тем, как чувствительные рабочие процессы достигнут производства. Песочница — это один слой, а не полный ответ.
Как долго следует хранить скриншоты и данные воспроизведения?
Хранение зависит от чувствительности рабочего процесса и ваших требований к аудиту. Для агентов, которые работают с личными данными, биллинговыми системами, клиентскими аккаунтами или внутренними инструментами, разумным базовым уровнем является определенный период хранения с контролем доступа и редактированием чувствительных значений (токены, содержимое форм, видимые учетные данные). Для рабочих процессов с низкой чувствительностью может быть уместно более короткое хранение или логирование только сводок. Решите до развертывания, кто может получить доступ к воспроизведениям, как долго они хранятся и как удаляются. Избегайте отношения к скриншотам как к безобидным отладочным артефактам — они часто содержат больше чувствительных данных, чем структурированные логи.
Какие действия агента всегда должны требовать одобрения человека?
Действия, которые трудно отменить или которые имеют юридическое значение, являются наиболее очевидными кандидатами: покупки, изменения настроек аккаунта, удаление файлов, ротация учетных данных, приглашения пользователей, отправка тикетов поддержки и загрузка клиентских или регулируемых данных. Помимо этого, рассмотрите требование одобрения для любого действия вне первоначальной области задачи, любого действия на домене или аккаунте, не предусмотренном в начале выполнения, и любой загрузки или выполнения файлов, которые задача явно не требовала. Событие одобрения должно записывать, что агент намеревался сделать, и что человек явно подтвердил.
