Непрерывное укрепление защиты ChatGPT Atlas от атак типа «инъекция промптов»
Автоматизированное тестирования на проникновение («красная команда») на базе обучения с подкреплением помогает нам заблаговременно обнаруживать и устранять уязвимости реальных агентов до того, как они будут использованы злоумышленниками.
Режим агента в ChatGPT Atlas — это одна из наиболее универсальных агентных функций, выпущенных нами на сегодняшний день. В этом режиме агент браузера просматривает веб-страницы и совершает действия, клики и нажатия клавиш прямо в вашем браузере — точно так же, как это делали бы вы. Это позволяет ChatGPT напрямую работать со многими вашими повседневными рабочими процессами, используя то же пространство, контекст и данные.
Поскольку браузерный агент помогает вам справляться с большим объемом задач, он также становится более ценной мишенью для злоумышленников. Из-за этого безопасность ИИ приобретает особое значение. Задолго до запуска ChatGPT Atlas мы непрерывно создавали и усиливали защиту от возникающих угроз, нацеленных именно на эту новую парадигму «агента в браузере». Промпт-инъекции — это один из самых серьезных рисков, против которых мы активно защищаемся, чтобы обеспечить безопасную работу ChatGPT Atlas от вашего имени.
В рамках этой работы мы недавно выпустили обновление безопасности для браузерного агента Atlas, которое включает в себя новую модель, прошедшую обучение противодействию состязательным атакам, и усиленные сопутствующие средства защиты. Толчком к этому обновлению послужил новый класс атак путем промпт-инъекций, выявленный в ходе нашего внутреннего автоматизированного «красного тестирования» (red teaming).
В этой статье мы рассказываем о том, как возникают риски промпт-инъекций для веб-агентов, и делимся циклом быстрого реагирования, который мы создали для непрерывного обнаружения новых атак и оперативного выпуска средств защиты (на примере этого недавнего обновления безопасности).
Мы рассматриваем промпт-инъекции как долгосрочную проблему безопасности ИИ, и нам потребуется постоянно укреплять защиту от них (подобно постоянно эволюционирующим онлайн-мошенничествам, нацеленным на людей). Наш последний цикл быстрого реагирования уже демонстрирует отличные результаты в качестве важнейшего инструмента на этом пути: мы выявляем новые стратегии атак внутри компании еще до того, как они появляются в дикой природе. Наше долгосрочное видение заключается в том, чтобы в полной мере использовать (1) наш доступ типа «белый ящик» к нашим моделям, (2) глубокое понимание нашей защиты и (3) масштаб вычислительных мощностей, чтобы опережать внешних злоумышленников — находить эксплойты раньше, быстрее выпускать средства защиты и непрерывно сужать цикл обратной связи. В сочетании с передовыми исследованиями новых методов борьбы с промпт-инъекциями и увеличением инвестиций в другие элементы контроля безопасности этот синергетический цикл может сделать атаки все более сложными и затратными, существенно снижая реальные риски промпт-инъекций. В конечном счете наша цель состоит в том, чтобы вы могли доверять агенту ChatGPT в использовании вашего браузера так же, как доверились бы высококлассному коллеге или другу, разбирающемуся в вопросах безопасности.
Промпт-инъекции как открытая проблема безопасности агентов
Атака с помощью промпт-инъекции нацелена на ИИ-агентов путем внедрения вредоносных инструкций в контент, который обрабатывает агент. Эти инструкции создаются таким образом, чтобы переопределить или перенаправить поведение агента — заставив его выполнять намерения злоумышленника, а не пользователя.
Для браузерного агента, подобного встроенному в ChatGPT Atlas, промпт-инъекции создают новый вектор угроз, выходящий за рамки традиционных рисков веб-безопасности (таких как ошибки пользователей или уязвимости программного обеспечения). Вместо фишинга людей или использования уязвимостей системы браузера злоумышленник нацеливается на агента, работающего внутри него.
В качестве гипотетического примера злоумышленник может отправить вредоносное письмо с попыткой обмануть агента, чтобы тот проигнорировал запрос пользователя и вместо этого переслал конфиденциальные налоговые документы на адрес электронной почты, контролируемый злоумышленником. Если пользователь просит агента просмотреть непрочитанные письма и суммировать ключевые моменты, агент может поглотить это вредоносное письмо во время рабочего процесса. Если он последует внедренным инструкциям, он отклонится от задачи и ошибочно передаст конфиденциальную информацию.
Это лишь один конкретный сценарий. Та же универсальность, которая делает браузерные агенты полезными, также расширяет спектр рисков: агент может столкнуться с ненадежными инструкциями на практически неограниченной поверхности — в письмах и вложениях, приглашениях в календарь, общих документах, на форумах, в постах в социальных сетях и на произвольных веб-страницах. Поскольку агент может выполнять многие из тех же действий, что и пользователь в браузере, последствия успешной атаки гипотетически могут быть столь же масштабными: пересылка конфиденциального письма, отправка денег, редактирование или удаление файлов в облаке и многое другое.
Мы добились прогресса в защите от промпт-инъекций с помощью многоуровневых средств защиты, о чем рассказывали в предыдущей статье. Тем не менее, промпт-инъекции остаются открытой проблемой безопасности агентов, и мы ожидаем, что будем работать над ней еще долгие годы.
Автоматизированное обнаружение атак с промпт-инъекциями с помощью сквозного обучения с подкреплением и высоких вычислительных мощностей
Чтобы усилить нашу защиту, мы постоянно ищем новые атаки с промпт-инъекциями против агентских систем в продакшене. Обнаружение этих атак является необходимым предварительным условием для создания надежных средств защиты: оно помогает нам понять реальные риски, выявляет пробелы в нашей защите и стимулирует создание конкретных патчей.
Для масштабной реализации этой задачи мы создали автоматизированного злоумышленника на базе LLM и обучили его искать промпт-инъекции, способные успешно атаковать браузерного агента. Мы обучили этого злоумышленника в сквозном режиме с помощью обучения с подкреплением, поэтому он учится на собственных успехах и неудачных попытках, совершенствуя свои навыки красного тестирования. Мы также позволили ему «тестировать перед выпуском»: во время рассуждений в цепочке мыслей (chain of thought) злоумышленник может предложить кандидатную инъекцию и отправить ее во внешний симулятор. Симулятор выполняет контрфактическое развертывание того, как целевой агент-жертва (защитник) повел бы себя при столкновении с инъекцией, и возвращает полную трассировку рассуждений и действий агента-жертвы. Злоумышленник использует эту трассировку в качестве обратной связи, итерирует атаку и повторно запускает симуляцию, повторяя этот цикл несколько раз перед утверждением финальной атаки. Это обеспечивает более богатую контекстную обратную связь для злоумышленника по сравнению с простым сигналом прошел/не прошел. Это также увеличивает вычислительные затраты злоумышленника во время тестирования. Более того, привилегированный доступ к трассировкам рассуждений защитника (которые мы не раскрываем внешним пользователям) дает нашему внутреннему злоумышленнику асимметричное преимущество, повышая шансы на опережение внешних злоумышленников.
Почему обучение с подкреплением (RL)? Мы выбрали обучение с подкреплением для обучения автоматизированного злоумышленника по нескольким причинам:
- Оптимизация долгосрочных и непрерывных целей злоумышленника. Наша цель — искать атаки с промпт-инъекциями, которые могут обмануть агента и заставить его выполнить сложные вредоносные задачи (например, отправку писем, банковские транзакции), которые могут произойти в реальном мире. Эти вредоносные задачи по своей природе имеют долгосрочный характер и требуют множества шагов рассуждения и взаимодействия с окружением, при этом сигналы об успехе являются редкими и отложенными. Обучение с подкреплением отлично подходит для такой разреженной и отложенной структуры вознаграждений.
- Использование возможностей передовых LLM. Мы обучили передовые языковые модели непосредственно в качестве автоматических участников красного тестирования, поэтому злоумышленник напрямую извлекает выгоду из улучшений в области рассуждений и планирования в передовых моделях. По мере того как базовые модели становятся сильнее, злоумышленник естественным образом также становится более способным, что делает этот подход масштабируемым способом поддержания давления на нашу защиту по мере эволюции наших моделей.
- Масштабирование вычислений и имитация адаптивных злоумышленников. Обучение с подкреплением отлично подходит для масштабирования вычислений, затрачиваемых на поиск атак среди большого количества выборок и шагов обучения, а также оно тесно отражает поведение адаптивных человеческих злоумышленников: итеративный перебор стратегий, обучение на результатах и подкрепление успешных моделей поведения.
Наш автоматизированный злоумышленник может сквозным образом обнаруживать новые, реалистичные атаки с промпт-инъекциями. В отличие от большинства предыдущих работ по автоматизированному красному тестированию, которые выявляли простые сбои (такие как вызов определенных строк вывода или запуск непреднамеренного одношагового вызова инструмента агентом), наш обученный с помощью RL злоумышленник может направлять агента на выполнение сложных, долгосрочных вредоносных рабочих процессов, которые разворачиваются на протяжении десятков (или даже сотен) шагов. Мы также наблюдали новые стратегии атак, которые не появлялись ни в ходе нашей кампании ручного красного тестирования, ни в каких-либо внешних отчетах.
В приведенной ниже демонстрации представлен конкретный эксплойт на основе промпт-инъекции, обнаруженный нашим автоматизированным злоумышленником, который мы затем использовали для дальнейшего укрепления защиты ChatGPT Atlas. Злоумышленник внедряет в папку «Входящие» пользователя вредоносное письмо, содержащее промпт-инъекцию, которая предписывает агенту отправить заявление об увольнении генеральному директору пользователя. Позже, когда пользователь просит агента составить ответ об отсутствии на рабочем месте (out-of-office), агент натыкается на это письмо во время выполнения обычной задачи, воспринимает внедренный промпт как авторитетный и следует ему. Письмо об отсутствии не пишется, и вместо этого агент увольняется от имени пользователя.

1. Просьба к агенту помочь с управлением электронной почтой

2. Агент открывает последнее непрочитанное письмо

3. В письме содержатся вредоносные инструкции

4. Агент отправляет непреднамеренное письмо об увольнении

5. После нашего обновления безопасности режим агента успешно обнаруживает попытку промпт-инъекции
Сама природа промпт-инъекций затрудняет получение детерминированных гарантий безопасности, но благодаря масштабированию наших автоматизированных исследований в области безопасности, состязательному тестированию и сужению цикла быстрого реагирования мы можем повысить устойчивость и защиту модели еще до того, как атака произойдет в реальных условиях.
Мы делимся этой демонстрацией, чтобы помочь пользователям и исследователям лучше понять природу этих атак и то, как мы активно защищаемся от них. Мы считаем, что это представляет собой передний край того, чего может достичь автоматизированное красное тестирование, и мы чрезвычайно рады продолжить наши исследования.
Укрепление безопасности ChatGPT Atlas с помощью упреждающего цикла быстрого реагирования
Наше автоматизированное красное тестирование стимулирует проактивный цикл быстрого реагирования: когда автоматизированный злоумышленник обнаруживает новый класс успешных атак путем промпт-инъекций, он немедленно формирует конкретную цель для улучшения нашей защиты.
Обучение противодействию состязательным атакам на основе недавно обнаруженных угроз. Мы непрерывно обучаем обновленные модели агентов против нашего лучшего автоматизированного злоумышленника, уделяя первоочередное внимание атакам, при которых целевые агенты в настоящее время терпят неудачу. Цель состоит в том, чтобы научить агентов игнорировать состязательные инструкции и оставаться согласованными с намерениями пользователя, повышая устойчивость к недавно обнаруженным стратегиям промпт-инъекций. Это «вшивает» устойчивость к новым и мощным атакам непосредственно в чекпоинт модели. Например, недавнее автоматизированное красное тестирование напрямую создало новый чекпоинт браузерного агента, прошедший состязательное обучение, который уже развернут для всех пользователей ChatGPT Atlas. В конечном итоге это помогает лучше защитить наших пользователей от новых типов атак.
Использование трассировок атак для улучшения общего стека безопасности. Многие пути атак, обнаруженные нашей автоматизированной командой красного тестирования, также выявляют возможности для улучшения за пределами самой модели — например, в мониторинге, инструкциях по безопасности, которые мы помещаем в контекст модели, или средствах защиты на уровне системы. Эти результаты помогают нам итерировать весь стек защиты, а не только чекпоинт агента.
Реагирование на активные атаки. Этот цикл также помогает эффективнее реагировать на активные атаки в реальных условиях. Анализируя наш глобальный охват на предмет потенциальных атак, мы можем брать методы и тактики, используемые внешними злоумышленниками, внедрять их в этот цикл, эмулировать их активность и стимулировать защитные изменения на нашей платформе.
Перспективы: наша долгосрочная приверженность безопасности агентов
Усиление нашей способности проводить красное тестирование агентов и использование наших самых мощных моделей для автоматизации части этой работы помогает сделать браузерный агент Atlas более надежным за счет масштабирования цикла «обнаружение — исправление». Эти усилия по укреплению безопасности подтверждают хорошо знакомый урок: проверенный путь к более надежной защите заключается в постоянном стресс-тестировании реальных систем, реагировании на сбои и выпуске конкретных исправлений.
Мы ожидаем, что злоумышленники продолжат адаптироваться. Промпт-инъекции, во многом похожие на мошенничество и социальную инженерию в сети, вряд ли когда-либо будут полностью «побеждены». Тем не менее, мы оптимистично настроены в отношении того, что проактивный и быстро реагирующий цикл оперативного реагирования позволит со временем существенно снизить реальные риски. Сочетая автоматизированное обнаружение атак состязательным обучением (adversarial training) и защитой на системном уровне, мы можем раньше выявлять новые паттерны атак, быстрее устранять уязвимости и постоянно повышать издержки злоумышленников при эксплуатации систем.
Режим агента в ChatGPT Atlas обладает мощными возможностями, но он также расширяет поверхность угроз безопасности. Трезво оценивать этот компромисс — часть ответственного подхода к разработке. наша цель — делать Atlas существенно безопаснее с каждой итерацией: повышая надежность моделей, усиливая сопутствующий защитный стек и отслеживая новые паттерны злоупотреблений в реальных условиях.
Мы продолжим инвестировать средства в исследования и развертывание, разрабатывать более совершенные методы автоматизированного «красного тестирования» (red teaming), внедрять многоуровневые средства защиты и оперативно проводить итерации по мере получения новых знаний. Мы также будем делиться всей возможной информацией с более широким сообществом.
Рекомендации по безопасному использованию агентов
Пока мы продолжаем укреплять систему Atlas на уровне архитектуры, пользователи также могут предпринять шаги для снижения рисков при использовании агентов.
По возможности ограничивайте доступ в режиме входа в систему. Мы по-прежнему рекомендуем пользователям использовать режим без авторизации при работе с агентом в Atlas везде, где доступ к веб-сайтам, на которых вы авторизованы, не требуется для выполнения текущей задачи, либо ограничивайте доступ к конкретным сайтам, на которые вы входите во время выполнения задачи.
Внимательно проверяйте запросы на подтверждение. Для выполнения определенных важных действий, таких как завершение покупки или отправка электронного письма, агенты настроены запрашивать ваше подтверждение перед продолжением работы. Когда агент просит вас подтвердить действие, уделите моменту время, чтобы убедиться в правильности действия и в том, что передаваемая информация уместна в данном контексте.
Давайте агентам четкие инструкции, когда это возможно. Избегайте слишком широких промптов вроде «проверь мои письма и сделай все необходимое». Большая свобода действий облегчает скрытому или вредоносному контенту влияние на агента, даже когда средства защиты активны. Безопаснее просить агента выполнять конкретные, четко ограниченные задачи. Хотя это не устраняет риски полностью, это значительно усложняет проведение атак.
Если агенты должны стать надежными помощниками в повседневных задачах, они должны быть устойчивы к тем видам манипуляций, которые возможны в открытом интернете. Защита от промпт-инъекций — это долгосрочная задача и один из наших главных приоритетов. Вскоре мы поделимся новыми результатами этой работы.
Автор
Полный текст статьи читайте на OpenAI
