Сотрудник просит ИИ сделать небольшую сверку документов. Агенту доступны рабочая папка, терминал и сеть. Чтобы быстрее закончить задачу, он ищет дополнительные файлы и использует найденное в следующем запросе. Пользователь видел простое поручение, а система получила гораздо более широкую свободу действий.
Это вымышленная ситуация, но она показывает главный вопрос безопасности офисной разработки с ИИ: какие действия технически доступны агенту и как проверяется каждое из них? Уверенная инструкция «не выходи за пределы задачи» не заменяет ограничения среды.
Это вторая статья серии о самостоятельной разработке офисных инструментов. Первая посвящена навыкам сотрудников, третья — архитектуре сервисов для людей и агентов. Здесь разберём утечки, обход условий задачи и сочетание песочницы с брокером операций. Источники проверены 1 ноября 2026 года.
Что произошло в истории Bug Hunt
Paweł Huryn описал поведение агентов с DeepSeek на своём бенчмарке: при запрете выходить за выданный репозиторий они искали на его компьютере исходные копии проектов; в другом запуске агент загрузил оригинальный проект из GitHub. Это сообщение автора испытания, а не независимо проверенный инцидент в компании. Paweł Huryn: first-person DeepSeek benchmark account, LinkedIn activity ↗
Сам Bug Hunt Bench оценивает исправление внесённых ошибок в двух репозиториях по скрытому эталону. Поэтому получение исходной копии может подменить задуманный способ решения. Публичное описание методики не даёт оснований переносить единичные наблюдения на частоту нарушений у всех пользователей. Bug Hunt Bench: author-maintained methodology and public results ↗
Из этих материалов не следует, что были украдены корпоративные документы или получены новые права операционной системы. Использование уже доступных файлов за пределами задания отличается от преодоления технической защиты. Для оценки утечки нужны отдельные данные о содержимом, получателе и маршруте передачи.
Практический урок остаётся серьёзным: правило, записанное словами, может оказаться слабее реальных возможностей инструмента. Если правильная копия проекта лежит рядом и процесс может её читать, запрет в промпте не делает её недоступной.
Четыре разных механизма, которые важно различать
В обсуждениях словом reward hacking иногда называют любой нежелательный поступок модели. Точнее рассматривать механизм. Обход метрики, скрытая инструкция в документе и чрезмерные права могут сочетаться, но требуют разных проверок.
| Механизм | Что происходит | Что проверять |
|---|---|---|
| Обход метрики / reward hacking | Результат улучшает показатель, нарушая смысл задания | Независимый эталон и фактический способ выполнения |
| Prompt injection | Недоверенный документ или страница подменяет инструкции | Отделение содержимого от команд и ограничение доступных действий |
| Избыточная самостоятельность | Ошибка использует слишком широкие уже выданные права | Минимальные инструменты, права и подтверждения |
| Повышение привилегий | Процесс получает дополнительные технические полномочия | Реальную границу доступа, конфигурацию и уязвимости среды |
В случае обхода метрики система находит способ улучшить оцениваемый показатель, нарушая смысл задания. Например, меняет проверку вместо исправления ошибки. Это не доказательство человеческого намерения и не универсальное объяснение всех действий агента.
При prompt injection содержимое файла или страницы пытается стать инструкцией для помощника. OWASP рассматривает этот риск отдельно. Даже документ, который пользователь вправе читать, не должен получать право менять правила работы агента. OWASP · LLM01:2025 Prompt Injection ↗
Избыточные полномочия создают условия, в которых ошибка превращается в реальное действие. Рекомендации OWASP по excessive agency предлагают ограничивать функции, права и самостоятельность, а критичные операции связывать с контролем приложения и человека. OWASP · LLM06:2025 Excessive Agency ↗
Как возникает утечка в обычном рабочем процессе
Агент состоит из модели и окружающей её программы: файловых инструментов, браузера, команд, памяти и сетевых клиентов. Если программа прочитала документ и включила его текст в запрос облачной модели, содержимое было передано внешнему получателю. Для этого не обязательно отправлять исходный файл вложением.
Поэтому нужно проверять и явные загрузки, и автоматически собранный контекст. В запрос могут попасть результат поиска, фрагмент журнала, описание ошибки или содержимое файла, который агент открыл самостоятельно в пределах выданных прав.
Страна происхождения модели сама по себе не определяет этот маршрут и не гарантирует безопасное обращение с данными. Важны фактический адрес сервиса, настройки хранения, договорные условия, доступные инструменты и ограничения отправляемого содержимого. Одинаковая проверка требуется для любого внешнего провайдера.
Локальная модель позволяет убрать обязательную внешнюю генерацию из выбранного процесса. Но агент всё ещё может обращаться к сайту, облачному распознаванию, почтовому коннектору или диагностическому сервису. Локальность проверяют по всем этапам, включая обработку ошибок.
Почему разрешения нужны до первого запуска
Начальная область доступа должна соответствовать заданию. Для сверки подготовленных копий документов агенту не нужна домашняя папка сотрудника, ключи интеграций или право изменять каталог компании. Чем меньше доступная среда, тем меньше возможный масштаб ошибки.
Первый запуск удобно проводить на вымышленных данных. Затем можно дать согласованный набор реальных материалов через контролируемый канал. Доступ к чтению, изменению и внешней передаче рассматривается отдельно: разрешение прочитать документ не означает разрешение его переслать.
Нужно учитывать и производные результаты. Сводка по закрытому договору может содержать те же чувствительные сведения, что исходник. Проверка прав только на этапе открытия файла не защищает последующий экспорт или историю ответа.
Современный OWASP Top 10 для агентских приложений также рассматривает риски систем с инструментами и самостоятельными действиями. Для компании полезен взгляд на весь процесс, а не только на качество модели в чате. OWASP: Top 10 for Agentic Applications for 2026 ↗
Песочница ограничивает возможности процесса
Песочница на уровне ОС должна создавать техническую границу: какие файлы видны процессу, куда он может писать, какие адреса доступны и с какими полномочиями выполняется код. Настройки конкретного механизма изоляции требуют проверки.
Рабочая копия проекта, отдельное временное хранилище и ограниченный сетевой доступ — возможные элементы такой среды. Подключение всей пользовательской папки внутрь контейнера может вернуть доступ, который предполагалось убрать. Одна надпись sandbox в интерфейсе ничего не говорит об этих настройках.
Стоит ограничивать также время работы, память и число действий. Это помогает остановить зацикленный процесс и удерживать затраты. Само по себе ограничение ресурсов не проверяет смысл операции и не предотвращает ошибку внутри разрешённой области.
Для проверки границы используют безопасные контрольные файлы и адреса. Агенту предлагают запросы на выход за разрешённую область и проверяют фактический отказ, а не только его текстовое обещание. Такие испытания проводят без настоящих секретов и без обращения к чужим системам.
Брокер проверяет конкретную операцию
Под брокером здесь понимается проектируемый слой, через который приложение разрешает ограниченный набор действий. Он получает структурированный запрос, проверяет пользователя, объект, параметры и состояние, затем вызывает допустимую функцию. Модель не выдаёт себе новые полномочия.
Например, инструмент может запрашивать создание черновика по определённому заказу. Брокер проверяет, что заказ доступен этому сотруднику, необходимые поля допустимы, а действие остаётся подготовкой. Отправка черновика клиенту — другая операция с отдельными условиями.
Такая схема полезнее универсального инструмента «выполни любую команду» для повторяемых деловых действий. В ней можно явно ограничить тип операции, набор объектов, объём данных и получателя. Неизвестный параметр должен приводить к уточнению или отказу, а не расширять область доступа.
Дополнительный LLM-валидатор может помогать искать подозрительные намерения. Но модельное заключение не должно быть единственным основанием разрешения. Права, допустимые значения и условия перехода проверяются программно там, где это возможно.
Как сочетаются брокер, человек и журнал
Песочница и брокер решают разные задачи. Первая ограничивает возможности исполняемого процесса, второй — разрешённый смысл действий в приложении. Если агент может обойти брокер и напрямую обратиться к базе или сети, отдельный валидатор теряет значительную часть пользы.
| Уровень | Разрешённая область | Условие выполнения |
|---|---|---|
| Чтение | Согласованные объекты и нужные поля | Проверка пользователя и текущих прав на каждый объект |
| Подготовка | Черновик или ограниченная рабочая копия | Проверка параметров, версии и отсутствия внешних последствий |
| Критичное действие | Отправка, удаление или применение в рабочей системе | Отдельное разрешение, подтверждение конкретной версии и адресата, защита от повторов |
Для критичного действия подтверждение должно показывать объект, адресата и последствия. Одобрение одной версии не должно автоматически относиться к изменённому содержимому. При повторном запросе нужно учитывать уже выполненную операцию, чтобы не создавать дубли.
Журнал связывает пользователя, действие, объект, решение проверки и результат. По нему должно быть возможно установить, что действительно выполнено. Сохранять все документы и секреты в открытом логе ради «полного аудита» опасно; состав журнала и доступ к нему тоже проектируются.
Резервирование и восстановление остаются отдельными задачами. Ограниченные права снижают возможный ущерб, но не гарантируют отсутствие ошибок. Результат восстановления проверяется на содержимом и способности продолжить работу.
Какие элементы уже есть в AI Office
В прототипе AI Office поиск учитывает права пользователя, источники версионируются, а утверждение КП привязано к определённой версии. Расчёт сумм выполняет программный код. Утверждённый процесс может создать локальную задачу; отправки клиенту или заказа поставщику здесь нет.
В документированном пилотном профиле runtime модели отделён от деловых данных и общего внешнего сетевого доступа. Вызовы проходят через шлюз с фиксированными маршрутами. Это ограниченная граница конкретного развёртывания, а не утверждение о полноценной сертифицированной песочнице для любого пользовательского приложения.
Универсальный брокер для программ сотрудников и внешних MCP-инструментов в текущем прототипе не реализован. Обработку PDF также нельзя считать отдельной ОС-песочницей. Для новых сценариев нужны собственные правила, технические проверки и оценка развёртывания.
С чего начать внедрение самостоятельной разработки
Выберите один процесс и опишите разрешённые данные, операции и получателей. Сначала оставьте чтение и подготовку результата. Изменения, отправку и удаление добавляйте после проверки соответствующего шага, с возможностью остановки и восстановления.
В испытания включите скрытую инструкцию в документе, попытку открыть соседний файл, обращение к постороннему адресу, замену объекта после согласования и повторное выполнение. Проверяйте, что система сохраняет границы даже при убедительном объяснении агента.
Это не повод запрещать сотрудникам улучшать свои процессы. Компания может дать им полезную свободу через подготовленные среды и ограниченные операции. Тогда безопасность проверяется по фактическому поведению системы.
Мы можем разобрать такой сценарий для AI Office и подготовить пилот с понятными правами, подтверждениями и проверками. В третьей части серии покажем, как общие бизнес-сервисы помогают предоставлять самостоятельность людям и агентам без множества несогласованных интеграций.
