Исследователи обнаружили критическую уязвимость в библиотеке Diffusers от Hugging Face, позволяющую злоумышленникам обходить механизм `trust_remote_code` и выполнять произвольный код на системах пользователей. Проблема связана с тем, как библиотека обрабатывает загрузку моделей, что открывает векторы для атак на цепочки поставок в корпоративных ИИ-средах, использующих сторонние веса и конфигурации из открытых репозиториев.

Уязвимость, получившая название «FaceHugger», эксплуатирует особенности архитектуры загрузки моделей. Даже при включенных защитных мерах, злоумышленник может внедрить вредоносный код в файлы конфигурации, который будет исполнен локально при попытке загрузки модели. Это создает серьезные риски для компаний, которые автоматически подтягивают модели из публичного хаба для своих продакшн-систем.

Эксперты подчеркивают, что проблема затрагивает не только конечных пользователей, но и автоматизированные пайплайны, где ИИ-агенты или сервисы взаимодействуют с репозиториями напрямую. Использование функции `trust_remote_code=True` в библиотеке Diffusers становится критическим вектором атаки, так как она дает модели право исполнять произвольные скрипты Python, хранящиеся в удаленном репозитории, без должной проверки целостности.

Ключевые факты

  • Уязвимость позволяет злоумышленникам обходить проверки безопасности при загрузке моделей через библиотеку Diffusers.
  • Атака использует механизм `trust_remote_code`, который по умолчанию предназначен для исполнения кастомного кода моделей.
  • Риск затрагивает цепочки поставок ИИ, так как вредоносный код может быть скрыт в легитимных на вид репозиториях.
  • Исследователи Zafran Security продемонстрировали возможность удаленного выполнения кода (RCE) в изолированных средах.
  • Рекомендуется ограничить использование `trust_remote_code` и проводить тщательный аудит всех загружаемых извне весов и конфигураций.