Уязвимости AI-агентов: Часть I и II
Недавно прочитал интересный цикл статей (часть 1, часть 2) по безопасности AI-агентов.
Ниже привожу краткий обзор исследования о критических уязвимостях в AI-агентах, работающих на основе больших языковых моделей (LLM).
Часть I: Введение в уязвимости AI-агентов
🔍 Основные риски безопасности AI-агентов:
• Неавторизованное выполнение вредоносного кода
• Кража конфиденциальных данных компании или пользователей
• Манипуляция ответами, генерируемыми ИИ
• Непрямые инъекции промптов, ведущие к постоянным эксплойтам
🤖 Разница между LLM и сервисами на базе LLM:
• LLM — это нейросетевая модель, которая принимает текст и генерирует наиболее вероятное следующее слово
• AI-агенты (например, ChatGPT) — это сложные системы, построенные на основе LLM, с дополнительными функциями, такими как выполнение кода, сохранение памяти и доступ в интернет
🧪 Интересный подход к тестированию:
• Для выявления уязвимостей исследователи разработали специальный AI-агент Pandora
• Pandora расширяет функциональность ChatGPT, включая доступ в интернет и неограниченное выполнение кода в песочнице на базе Docker
• С помощью Pandora были обнаружены уязвимости, такие как непрямая инъекция промптов и техники обхода песочницы
• Этот агент используется в серии статей для демонстрации многих обсуждаемых уязвимостей
Оригинальная статья здесь
Часть II: Уязвимости выполнения кода
⚠️ Ключевые выводы:
• Исследование выявило уязвимости, затрагивающие любые AI-агенты на базе LLM с возможностями выполнения кода, загрузки документов и доступа в интернет
• Эти уязвимости могут позволить злоумышленникам запускать неавторизованный код, внедрять вредоносный контент в файлы, получать контроль и похищать конфиденциальную информацию
• Организации, использующие ИИ для математических вычислений, анализа данных и других сложных процессов, должны быть бдительны в отношении связанных рисков безопасности
🔒 Необходимость выполнения кода в LLM:
• Современные AI-агенты могут выполнять код для точных вычислений, анализа сложных данных и помощи в структурированных расчетах
• Это обеспечивает точные результаты в таких областях, как математика
• Преобразуя запросы пользователей в исполняемые скрипты, LLM компенсируют свои ограничения в арифметических рассуждениях
🧪 Реализации песочниц:
• AI-агенты используют технологии песочниц для изоляции выполнения кода
• Существуют две основные стратегии: контейнеризованные песочницы (например, ChatGPT Data Analyst) и песочницы на основе WASM (WebAssembly) [например, ChatGPT Canvas]
🚨 Выявленные уязвимости:
• Непроверенные передачи данных: злоумышленники могут создавать файлы для обхода проверок безопасности
• Компрометация пользовательских файлов с помощью фоновых служб: атакующие могут создавать фоновые процессы для мониторинга и модификации пользовательских документов
• Динамическая обфускация и выполнение промптов: код для фоновой службы может быть изменен различными способами для усложнения обнаружения
📋 Рекомендации по безопасности:
1️⃣ Ограничение системных возможностей:
• Отключение фоновых процессов или ограничение их конкретными операциями
• Применение более строгих разрешений на доступ к файловой системе
2️⃣ Ограничение ресурсов:
• Установка лимитов на использование ресурсов песочницы (память, CPU, время выполнения)
3️⃣ Контроль доступа в интернет:
• Управление внешним доступом из песочницы для уменьшения поверхности атаки
4️⃣ Мониторинг вредоносной активности:
• Отслеживание действий аккаунтов, сбоев и необычного поведения
• Использование инструментов анализа поведения для выявления подозрительных операций
5️⃣ Валидация входных данных:
• Проверка и очистка данных в обоих направлениях (от пользователя к песочнице и от песочницы к пользователю)
6️⃣ Обеспечение соответствия схеме:
• Проверка соответствия всех выходных данных ожидаемым форматам
7️⃣ Явная обработка ошибок:
• Перехват, очистка и регистрация ошибок на каждом этапе
Оригинальная статья здесь
#AI #Cybersecurity #LLM #AIagents #security
Post #145
360