Исследователи обнаружили критическую уязвимость в библиотеке Diffusers от Hugging Face, позволяющую злоумышленникам обходить механизм `trust_remote_code` и выполнять произвольный код на системах пользователей. Проблема связана с тем, как библиотека обрабатывает загрузку моделей, что открывает векторы для атак на цепочки поставок в корпоративных ИИ-средах, использующих сторонние веса и конфигурации из открытых репозиториев.
Уязвимость, получившая название «FaceHugger», эксплуатирует особенности архитектуры загрузки моделей. Даже при включенных защитных мерах, злоумышленник может внедрить вредоносный код в файлы конфигурации, который будет исполнен локально при попытке загрузки модели. Это создает серьезные риски для компаний, которые автоматически подтягивают модели из публичного хаба для своих продакшн-систем.
Эксперты подчеркивают, что проблема затрагивает не только конечных пользователей, но и автоматизированные пайплайны, где ИИ-агенты или сервисы взаимодействуют с репозиториями напрямую. Использование функции `trust_remote_code=True` в библиотеке Diffusers становится критическим вектором атаки, так как она дает модели право исполнять произвольные скрипты Python, хранящиеся в удаленном репозитории, без должной проверки целостности.
Ключевые факты
- Уязвимость позволяет злоумышленникам обходить проверки безопасности при загрузке моделей через библиотеку Diffusers.
- Атака использует механизм `trust_remote_code`, который по умолчанию предназначен для исполнения кастомного кода моделей.
- Риск затрагивает цепочки поставок ИИ, так как вредоносный код может быть скрыт в легитимных на вид репозиториях.
- Исследователи Zafran Security продемонстрировали возможность удаленного выполнения кода (RCE) в изолированных средах.
- Рекомендуется ограничить использование `trust_remote_code` и проводить тщательный аудит всех загружаемых извне весов и конфигураций.