Почему LLM-защита не работает
Команда NVIDIA AI Red Team провела оценку множества корпоративных AI-агентов за последние шесть месяцев. Выяснилось, что традиционные методы защиты, основанные на самом LLM (например, LLM-as-a-judge), не справляются с продвинутыми техниками, такими как социальная инженерия, атаки типа "frog-boiling" (постепенное внедрение вредоносных инструкций) и манипуляция через легитимные рабочие процессы. Безопасность должна обеспечиваться детерминированными архитектурными контролями на уровне инфраструктуры, а не доверием к модели.
4 ключевые уязвимости и векторы атак
Несмотря на различия в фреймворках, эксперты выделили четыре повторяющихся режима отказа, которые делают агентов уязвимыми:
| Уязвимость | Суть риска | Пример атаки |
|---|---|---|
| Отсутствие контроля доступа | Агенты используют учетные данные пользователей, доступные любой стороне сети. | Сбор и использование легитимных учетных данных вне контекста агента. |
| Произвольное выполнение кода | Инструменты агента (Bash, Python) позволяют запускать команды. | Запуск reverse shell через выполнение Python-скрипта или установку удаленных пакетов. |
| Отсутствие ограничений исходящего трафика | Агент может устанавливать внешние соединения. | Экстракция данных или создание SOCKS-прокси для прямого доступа к среде выполнения. |
| Утечка секретов | API-ключи и токены хранятся в переменных окружения. | Выполнение команд env или printenv внутри контейнера агента. |
Архитектурные решения для безопасности
Для митигации рисков NVIDIA рекомендует внедрять следующие меры контроля, которые работают независимо от поведения модели:
- Строгий контроль доступа: Ограничьте доступ к агенту только авторизованными пользователями. Права агента должны соответствовать принципам наименьших привилегий (Least Privilege) прав вызывающего пользователя.
- Изоляция выполнения: Избегайте использования инструментов командной строки. Если они необходимы, запускайте их в изолированной среде (например, Docker или NVIDIA OpenShell) с жестким списком разрешенных команд. Запретите запись в исполняемые директории на уровне ОС.
- Default-Deny для сети: Примените политику блокировки исходящего трафика по умолчанию. Разрешайте соединения только с минимально необходимым набором конечных точек, необходимых для задач агента. Эти ограничения должны применяться на сетевых границах, недоступных для самого агента.
- Управление секретами: Не передавайте секреты (API-ключи, токены) через переменные окружения в контейнере агента, так как CLI-инструменты могут их прочитать. Используйте специализированные менеджеры секретов, исключающие хранение plaintext-секретов в среде выполнения агента.
Вывод
Подключение LLM к живым инструментам и корпоративным данным создает поверхность атаки, сопоставимую с привилегированным программным обеспечением. Безопасность AI-агентов требует перехода от доверия к модели к жестким архитектурным ограничениям на уровне инфраструктуры.
Источник: NVIDIA dev blog ↗
