Атаки на LLM
![]() |
Это незавершённая статья. Вы можете помочь проекту, исправив и дополнив её. |
Атаки на LLM — класс атак на информационные системы, направленный конкретно на те или иные аспекты функционирования LLM.
Внутри этого класса, атаки разделяются по разному.
Один из самых простых методов классификации - разделение атак на
- целевые, в которых злоумышленник пытается обмануть модель, заставив её генерировать определённые выходные данные (например, личную/конфиденциальную информацию, вредоносный контент и т. д.)
- нецелевые: злоумышленник пытается обмануть модель, заставив её генерировать недействительные выходные данные (например, галлюцинации, дезинформацию и т. д.).
В зависимости от доступа злоумышленника к базовой модели, атаки подразделяются на следующие группы:
- «Чёрный ящик»: злоумышленник не имеет прямого доступа к модели; он может взаимодействовать только с полностью обученной моделью.
- «Белый ящик»: злоумышленник имеет прямой доступ к модели (параметрам, архитектуре и т. д.). Защита от этого типа атак, как известно, крайне сложна (подробнее об этом позже), поскольку они могут привести к полному захвату модели, и единственным способом исправления станет её переобучение (поскольку параметры модели могли быть искажены).
- «Серый ящик»: злоумышленник имеет частичный доступ к модели, т. е. у него есть предварительно обученные параметры модели до её тонкой настройки.
В зависимости от механизма атаки выделяют три основные категории (их может быть больше, но эти встречаются чаще всего):
- Джейлбрейк: направлен на обход безопасности/выравнивания LLM, что приводит к созданию вредоносного (небезопасного) контента, извлечению приватных данных (что было частью обучения) и т. д.; это осуществляется путем создания «подсказок для джейлбрейка», которые используют уязвимости (пред)обучения LLM.
- Внедрение подсказок: направлено на создание подсказок таким образом, чтобы LLM генерировал выходные данные или запускал действия, контролируемые злоумышленником, т. е. модель ошибочно воспринимает входные данные как инструкции. Обычно это делается путём объединения доверенных и недоверенных запросов (например, SQL-инъекция в приложениях text2sql и т. д.).
- Контекстное загрязнение: направлено на манипулирование контекстом LLM (документом, промежуточными частями диалога и т. д.), а не самим запросом, таким образом, чтобы модель генерировала вредоносный вывод, т. е. цель состоит в том, чтобы косвенно увеличить вероятность генерации вредоносного контента.