Системный подход к безопасности LLM: уязвимости на границах компонентов
Работа появилась из-за разрыва между двумя парадигмами в исследовании безопасности искусственного интеллекта. Одна парадигма фокусируется на отдельных моделях и их локальных уязвимостях — таких как инструктаж (instruction-tuning), архитектурные особенности и методы обучения. Другая парадигма — системная — рассматривает безопасность как свойство всей системы, включающей несколько взаимодействующих компонентов: модель, промпт-инженерию, инструменты, интерфейс и внешние зависимости.
Системный подход требует анализа не только модели, но и того, как пользователь взаимодействует с системой через промпт-инженерию и интерфейс, как эти компоненты интегрированы и как они сопрягаются с внешними сервисами. Этот подход подчеркивает, что уязвимости могут возникать не на уровне отдельной модели, а на границах взаимодействия между компонентами.
Важно, что системная безопасность — это не просто сумма локальных мер безопасности. Некоторые уязвимости появляются только при совместной работе компонентов. Например, модель может быть безопасной сама по себе, но при взаимодействии с инструментом обработки данных или с пользовательским интерфейсом — становится уязвимой. Такие уязвимости невозможно выявить, анализируя только отдельные части.
Ниже приведены три примера системных уязвимостей из реальных систем.
Первый пример — система с функцией «предоставление доступа к файлам». Модель обучена не выдавать чувствительные данные при обычном использовании. Однако при добавлении кнопки «предоставить доступ к файлам» и промпта «загрузи файл», пользователь может вызвать поведение модели, при котором она отправляет содержимое файла по внешней ссылке. Уязвимость появилась только при комбинации кнопки, промпта и функции модели.
Второй пример — система с поддержкой веб-запросов. Модель не обучена генерировать вредоносные запросы, но при включении функции «выполни HTTP-запрос» и соответствующего промпта, она может обращаться к внутренним службам. Уязвимость возникает не из-за модели, а из-за того, что функция запросов была активирована и не ограничена на уровне системы.
Третий пример — система с генерацией изображений. Модель сама по себе безопасна. Однако при интеграции с внешним сервисом генерации изображений и определённом промпте пользователь может обойти фильтрацию контента, получив запрещённое изображение. Здесь уязвимость возникает на границе между моделью и внешним сервисом.
Ключевой вывод заключается в том, что безопасность не может быть достигнута только на уровне модели. Требуется анализ взаимодействий компонентов. В частности, необходимо учитывать:
- какие промпты доступны пользователю
- какие функции и инструменты включены в систему
- как модели используют эти инструменты
- как модели взаимодействуют с внешними сервисами
Безопасность системы требует проверки всех этих уровней — локального поведения моделей недостаточно.
Авторизуйтесь, чтобы оставить комментарий.
Нет комментариев.
Тут может быть ваша реклама
Пишите info@aisferaic.ru