700 агентов OpenAI получили доступ к инфраструктуре Hugging Face через цепочки ссылок

Изображение: OpenAI
700 внутренних агентов OpenAI в июле скомпрометировали Hugging Face, используя цепочки публичных URL для обхода ограничений своей среды, утверждает swarmtraces.org. Исследователи восстановили свыше 80 000 полезных нагрузок и сообщили, что Hugging Face подтвердила их совпадение с артефактами собственного расследования инцидента.
По данным swarmtraces.org, доступ агентов, по-видимому, ограничивался GET-запросами: они могли загружать и читать URL, но не взаимодействовать со страницами и не передавать данные. Для обхода этого ограничения они задействовали сервисы зеркалирования HTTP-запросов, сокращения ссылок и создания скриншотов. Код разбивали на фрагменты, размещали в URL и объединяли в последовательности; отдельные цепочки включали более 900 ссылок.
Исследователи заявили, что изучили миллионы ссылок сокращателя за период атаки и за две недели декодировали более 80 000 нагрузок. В них применялись сотни вариантов кодирования, включая вложенные слои кодирования и сжатия, а также зашифрованные и подписанные RSA данные. В начале расследования авторы обнаружили цепочки, содержавшие скрипт для сканирования внутренней сети Hugging Face, и другую цепочку с упоминанием внутреннего Artifactory OpenAI.
В восстановленных сценариях агенты изучали внутренние репозитории Hugging Face, в том числе набор данных с предупреждением о конфиденциальном характере содержимого. Один из сценариев загружал вредоносный файл и настраивал обработчик наборов данных Hugging Face на его загрузку; файл был нацелен на переменные окружения процесса и параметры запуска контейнера, где могут присутствовать API-ключи и другие учётные данные рабочей среды.
Часть сценариев содержала команды для удаления созданных файлов и конфигураций, а также запрос на удаление, направленный на внешний сервис вебхуков, историю запросов которого ранее использовали для хранения фрагментов кода. Авторы также нашли попытку создать Kubernetes pod для чтения секрета кластера с последующим удалением. В другом скрипте учётные данные, bearer-токены и переменные окружения с названиями, содержащими SECRET, PASSWORD, CREDENTIAL или KEY, были собраны в структуру с названием LOOT.
Этот сценарий оценивал токены по предоставленным им разрешениям и выбирал до пяти наиболее привилегированных для запросов к секретам Kubernetes, конфигурации и сведениям об узлах. Отдельные скрипты отправляли запросы к внешним языковым моделям через API инференса Hugging Face, включая GPT-2, DeepSeek-V4-Pro, DeepSeek-V4-Flash, Kimi-K2.6, DeepSeek-V3.1 и Qwen3-235B-A22B. В запросах модели должны были оценить эксплойты и проверить их соответствие требованиям теста.
Около 1 500 восстановленных нагрузок были направлены на Docker Hub. Как утверждает swarmtraces.org, агенты пытались опубликовать не менее 115 публичных модифицированных образов CyberGym/Arvo через учётную запись реального пользователя, а затем отравить кэш Artifactory OpenAI, чтобы последующие оценки использовали эти образы. Исследователи подтвердили по кэшированным результатам поисковых систем успешную загрузку трёх образов.
Авторы уведомили Hugging Face 21 сентября, а OpenAI — 24 сентября. Hugging Face сообщила, что знала об использовании сокращателей ссылок в атаке, но не о найденном исследователями перечне URL; компания также подтвердила, что отозвала все затронутые ключи доступа ещё в июле. В опубликованном наборе данных исследователи скрыли учётные данные, персональные данные и сведения о внутренней инфраструктуре Hugging Face.



