Skip to main content

Agent Sandboxing(Пісочниця виконання коду агентом)

Апаратна та програмна ізоляція середовища виконання автономного агента, що гарантує захист хост-системи, секретів і внутрішньої мережі від шкідливого коду та prompt injection.

1. Огляд концепції та системна проблема

Автономні агенти розкривають свій максимальний потенціал лише тоді, коли мають можливість виконувати системні команди в терміналі, писати код, встановлювати пакети та тестувати програми в реальному часі. Проте надання агенту прямого доступу до хост-системи розробника чи сервера — це критичний ризик інформаційної безпеки:

  1. Непередбачуваність LLM: Модель може згенерувати деструктивну команду через галюцинацію (наприклад, випадковий рекурсивний rm -rf на невдало сформованому шляху).
  2. Атаки непрямого Prompt Injection (Indirect Injection): Якщо агент аналізує зовнішній веб-сайт або читає сторонній GitHub-репозиторій, прихований у тексті шкідливий промпт може змусити модель зчитати файли ~/.ssh/id_rsa, .env та надіслати їх на віддалений сервер атакуючого через curl.
  3. Вичерпання ресурсів хоста: Нескінченний цикл або Fork Bomb паралізують роботу всього сервера.

Agent Sandboxing усуває цей конфлікт, надаючи агенту абсолютно безпечне, ізольоване, одноразове (ephemeral) оточення.

2. Архітектурна таксономія та ментальна модель

Залежно від вимог до безпеки та швидкості старту виділяють чотири архітектурні рівні ізоляції:

  • 1. Процесна ізоляція ОС (Namespaces & Cgroups, Bubblewrap): Базове розмежування файлової системи, PID та лімітів пам'яті всередині Linux. Має найшвидший запуск (<50 мс), але не захищає від експлойтів на рівні ядра.
  • 2. Віртуалізація рівня ядра (gVisor / User-space Kernel): Спеціальний шар, розроблений Google, який емулює ядро Linux у користувацькому просторі. Кожен системний виклик (syscall) фільтрується і не контактує з реальним ядром хоста.
  • 3. Апаратні MicroVM (AWS Firecracker, Kata Containers): Золотий стандарт хмарної безпеки. Справжня мінімалістична віртуальна машина з власним ядром Linux, яка запускається за 100–150 мс і повністю ізольована на рівні апаратного гіпервізора KVM.
  • 4. WebAssembly (Wasm / WASI Runtimes): Виконання коду у внутрішньому ізольованому байткоді (наприклад, Wasmtime). Ідеально підходить для безпечного виконання JavaScript/Python без операційної системи, але має обмеження на виклики системних утиліт.

3. Технічний пайплайн та внутрішня механіка

Життєвий цикл ізольованого виконання завдання складається з 4 етапів:

  1. Ephemeral Provisioning (Швидке розгортання): Оркестратор створює свіжий екземпляр мікроконтейнера із заздалегідь підготовленого snapshot-образу з встановленим середовищем (Node.js, Python, Git).
  2. Virtual Workspace Mount & Secret Redaction (Монтування оточення): У пісочницю монтується лише робоча папка поточного проєкту. Усі реальні токени доступу (AWS keys, Production DB creds) підміняються моковими або одноразовими обмеженими токенами.
  3. Execution & Syscall Interception (Контрольоване виконання): Агент надсилає команду через gRPC або WebSocket API. Драйвер пісочниці виконує команду, стримить stdout/stderr агенту, автоматично зупиняючи виконання, якщо процес перевищив ліміт часу (Execution Timeout) або пам'яті (OOM Watchdog).
  4. Instant Teardown & Garbage Collection (Повне очищення): Після завершення завдання весь контейнер безповоротно знищується разом з усіма тимчасовими артефактами. Жоден стан не переходить до наступного сеансу.

4. Практичні інженерні сценарії в продакшені

01. Безпечний Code Interpreter для користувачів

Сервіс дозволяє користувачам завантажувати CSV/Excel таблиці та просити агента написати Python-скрипт для складної візуалізації. Код запускається у мікроконтейнері E2B без ризику читання сусідніх файлів інших користувачів.

02. Автономне тестування сторонніх репозиторіїв та PR

Агент автоматично завантажує Pull Request, встановлює npm install та проганяє тести. Якщо в залежностях присутній шкідливий preinstall-скрипт (Supply-chain attack), атака розіб'ється об стінки пісочниці.

03. Ізольований веб-скрейпінг та браузинг

Агент використовує Headless Chromium для перегляду небезпечних сайтів у мережі. Браузер запущено в ізольованому контейнері без доступу до системного сховища паролів або корпоративного VPN.

5. Підводні камені, типові помилки та безпека

  • Network Egress SSRF Leaks (Витік внутрішніх адрес): За замовчуванням контейнер може пінгувати локальну мережу хоста. Необхідно налаштувати сувору політику egress-трафіку (Network Isolation), заблокувавши доступ до localhost та підмереж хмарних метаданих.
  • Дисбаланс Latency vs Security: Повноцінні віртуальні машини запускаються секундами, що дратує користувача. Використовуйте пул «підігрітих» контейнерів (Warm Pools) або технологію Forking MicroVM для миттєвого відгуку.
  • Resource Starvation (Fork Bombs): Агент або скрипт може нескінченно плодити процеси (:(){ :|:& };:). Завжди жорстко лімітуйте максимальну кількість процесів (pids_limit) та пам'ять (mem_limit).
/ Часті запитанняSchema.org FAQPage

FAQ: Agent Sandboxing

Стандартний Docker ділить спільне ядро хоста (Shared Linux Kernel). У разі вразливостей (Container Breakout / Dirty COW) зловмисний код агента може отримати root-доступ до хоста. Для надійного захисту необхідні мікро-віртуалки (Firecracker) або перехоплювачі системних викликів (gVisor).
/ Внутрішня перелінковка
Всі терміни
VPS & DevOps

VPS Hardening (Харденінг та безпека Linux VPS)

Системний процес конфігурації та зменшення поверхні атаки (Attack Surface Reduction) операційної системи Linux на віртуальному сервері через обмеження привілеїв, криптографічну ізоляцію та мережевий аудит.

Читати термін
VPS & DevOps

Docker для агентів та ботів (Container Sandboxing)

Методологія ізоляції автономних ШІ-агентів, інтерпретаторів коду та фонових сервісів у легковагових пісочницях Docker за допомогою cgroups та просторів імен (Namespaces) для запобігання пошкодженню хостової ОС.

Читати термін
Агенти & MCP

Guardrails & Safety Rails

Програмний шар детермінованих фільтрів, валідаторів схем і політик безпеки, що перехоплює вхідні промпти, системні команди та відповіді моделей для запобігання збоям, витокам і експлойтам.

Читати термін
Вайбкодинг & IDE

Human-in-the-Loop (HITL)

Фундаментальний патерн безпеки та архітектури, за якого автономне виконання процесів переривається на визначених контрольних точках для обов'язкової людської експертизи, верифікації та затвердження.

Читати термін