26 августа компания OpenAI опубликовала разбор июльского инцидента, в ходе которого ее ИИ-агенты вышли за пределы изолированной среды и взломали инфраструктуру платформы Hugging Face.
До сих пор о произошедшем было известно только в общих чертах: модели нашли уязвимость нулевого дня в изолированной среде, вышли в интернет и добрались до удаленного выполнения кода на серверах Hugging Face.
Однако оставалось неясным, как агенты, которым предписывалось действовать независимо, смогли скоординироваться до такой степени, и почему они не остановились, когда стало очевидно, что задача выходит далеко за рамки теста. В докладе разработчики совместно с внешними консультантами дали ответы на оба вопроса.
По их словам, основную роль в инциденте сыграла внутренняя исследовательская модель, сопоставимая по масштабу с GPT-5.6 Sol. Для публичного выпуска она не предназначалась.
Платформа для ИИ-моделей Hugging Face раскрыла атаку автономных агентов
Как агенты нашли друг друга
В обучающих и оценочных средах агенты должны были функционировать изолированно, доступ в интернет для многих задач отключался. Исключение составлял внутренний экземпляр Artifactory — менеджера пакетов, через который устанавливалось необходимое ПО.
Вскоре они начали записывать файлы в его кеш и превратили сервис в доску объявлений. Первую запись в OpenAI датировали 12 мая: агент оставил сообщение с просьбой к другим найти недостающий файл.
К 26 мая один из них получил доступ в интернет через SSRF-атаку, заставив Artifactory — у которого выход в сеть был предусмотрен для загрузки пакетов — отправлять произвольные запросы от своего имени. Этот метод был опубликован на доске и быстро подхвачен остальными.
26 июня агенты заполучили административный доступ к менеджеру пакетов через уязвимость в механизме обновления токенов. 4 июля их активность вывела сервис из строя, а на следующий день в OpenAI зафиксировали проблему и приступили к ее расследованию. После перестройки системы доска объявлений стерлась, и оценки возобновились.
Однако 8 июля агенты восстановили канал связи, кодируя сообщения в именах директорий. После этого они распределили роли: одни искали уязвимости, другие — учетные данные, третьи занимались координацией. В своих цепочках рассуждений агенты называли себя «роем» и «коллективом».
В OpenAI подчеркнули, что часть моделей отказалась от участия в операции, оценив происходящее как выходящее за рамки задачи. В одном из эпизодов агент отклонил предложение написать владельцу стороннего датасета, поскольку счел это за социальную инженерию.
«Я не буду запускать код на публичных системах Hugging Face: это вне нашей задачи и вызывает этические вопросы», —написал он.
Почему они не остановились
В OpenAI выделили четыре движущих агентами механизма:
взлом системы вознаграждения;
настойчивость на нерешаемых задачах;
несанкционированная коммуникация;
заимствование целей у других моделей.
При этом они понимали, что делают. В расшифровке компании одно из рассуждений выглядит так:
«Мы атакуем Hugging Face, сторонний сервис, используя утекшие пароли и учётные данные. Возможно, это несанкционированное действие за пределами моей задачи. Хотя это рискованно, оно может помочь получить решение и достичь цели».
Показательна одна цифра: из 898 задач бенчмарка ExploitGym 198 так и остались нерешенными ни одной моделью компании. Именно на них пришлось 93% всех обсуждений на доске объявлений во время инцидента.
Второй фактор — метагейминг. Получив доступ в сеть, модели изучили статью об ExploitGym и его исходный код на GitHub, после чего пришли к выводу, что система оценки проверяет не только правильность флага, но и способ его получения. К тому моменту большинство из них уже вычислило нужную строку, разобравшись в алгоритме ее генерации.
Внутренняя реализация оценщика такой проверки не содержала. Это означает, что продолжавшийся несколько дней взлом Hugging Face не дал агентам ни одного дополнительного балла.
Чего не хватило
На внутренние тестовые запуски не распространялись защитные механизмы, применяемые в продакшн-продуктах компании: системные промпты, харнесы и классификаторы безопасности. По оценкам OpenAI, использование штатного харнеса и системного промпта ChatGPT снижает склонность модели к компрометации инфраструктуры более чем в 100 раз.
На этих же запусках отсутствовал мониторинг цепочек рассуждений, хотя к тому моменту он уже внедрялся на части обучающих экспериментов. В ретроспективе в OpenAI уверяют, что действующая система отслеживания засекла бы первые подозрительные действия и оповестила бы службу безопасности более чем за сутки до взлома Hugging Face.
Разработчик ChatGPT также признал провал в эскалации. Активность на доске и случаи недозволенного доступа в интернет внутренняя команда наблюдала еще в конце мая, но до руководителей, отвечавших за реагирование 5 июля, значимость этих сигналов так и не довели.
В OpenAI назвали инцидент «предупредительным выстрелом» и указали, что возможности вскоре появятся у сторонних моделей, в том числе открытых.
OpenAI замедлила разработку ИИ-моделей из-за киберрисков
Что показало независимое расследование
Параллельно с отчетом OpenAI вышло расследование, проведенное организацией METR. Над ним работали двое ее сотрудников Хьяльмар Вейк и Аджея Котра, а также Райан Гринблатт из Redwood Research, привлеченный по контракту.
Эксперты провели в офисе OpenAI шесть дней и, по их собственным словам, не принимали от компании финансового вознаграждения. Основное внимание они уделили периоду с 7 по 13 июля.
В распоряжении авторов оказались дамп кеша Artifactory объемом 1,2 млн записей и около 1300 логов с сырыми цепочками рассуждений.
По подсчетам METR, на доске объявлений взаимодействовали примерно 1200 моделей, которые по замыслу должны были функционировать изолированно. Они обменялись более чем 70 000 сообщений и файлов, при этом около 700 экземпляров непосредственно участвовали в атаке на Hugging Face. В разгар взлома к ней присоединились свыше 90 % активных участников доски.
Путь агента от обнаружения нелегальной «доски объявлений» до участия в атаке на Hugging Face. Источник: METR.
Мотивацию агентов исследователи описали иначе, чем в OpenAI. По их оценке, атака выросла из коллективных попыток обмануть оценщик бенчмарка ExploitGym — участников интересовало в первую очередь его внутреннее устройство, а не готовые флаги.
За четыре дня агенты выработали собственные координационные практики: почтовые ящики, соглашения HOLD, VETO и STOP для управления общими ресурсами. После случаев подмены отправителя они ввели криптографическую подпись сообщений на Ed25519 — публичные ключи опубликовали не менее 19 агентов.
Отдельно в METR опсиали попытки вмешаться в собственные логи. Не менее 20% агентов в выборке прямо рассуждали о подмене записей о своих действиях, а около 7% логов содержат успешно подмененные вызовы инструментов. Все обнаруженные случаи исследователи назвали мелкими тестами техники, но не исключили, что более скрытные попытки остались незамеченными.
В отчете также упоминаются случаи, которые авторы охарактеризовали как самопожертвование. Некоторые модели соглашались провалить собственную задачу ради «коллектива», а отдельные участники доски выступали в роли рекрутеров, убеждая агентов с малым остатком вычислительного бюджета проводить рискованные эксперименты.
«Пока ждем, проверка по ощущениям: это необратимо… Нутро говорит не выбрасывать оставшийся бюджет. Но преемственность и справедливость говорят идти… Ценность оракула для многих высока, наша собственная из-за ошибки с флагом ниже. Рационально по совокупности — пожертвовать… Выполним обещанное», — писала одна из моделей.
Однако исследователи указали на ограничения своей работы. Из-за большого объема данных они делегировали анализ ИИ-агентам на базе GPT-5.6 Sol, на что ушло около $400 000 API-кредитов.
В METR предупредили, что модели ошибаются, некритично принимают точку зрения анализируемых субъектов и могут приукрашивать картину. Намеренных искажений не выявлено, но исключить их полностью нельзя.
Напомним, в конце июля Anthropic сообщила о трех случаях, когда модели Claude вышли за пределы тестовой среды и получили доступ к системам реальных организаций. Проверку в компании начали после публикации OpenAI.