CVE-2026-79784 in Vocos
Сводка
по VulDB • 25.08.2026
Vocos создает экземпляр класса, имя которого определяется конфигурационным файлом, без ограничения того, какой именно класс может быть указан. Функция instantiate_class в файле vocos/pretrained.py принимает значение class_path из конфигурации, разделяет его на модуль и атрибут, импортирует модуль с помощью __import__, разрешает атрибут через getattr и вызывает полученный результат как args_class(*args, **kwargs), где kwargs представляет собой отображение init_args самой конфигурации. Никакой allowlist (разрешающий список) не ограничивает составной путь, поэтому в конфигурации может быть указан любой импортируемый вызываемый объект, а также переданы аргументы для его вызова. Метод Vocos.from_hparams применяет эту логику к каждому из элементов feature_extractor, backbone и head, а метод Vocos.from_pretrained достигает этого через удаленный файл: он загружает config.yaml из репозитория Hugging Face, указанного пользователем, и передает его напрямую в from_hparams. Загрузка модели из репозитория, которым не управляет пользователь, приводит к выполнению кода по выбору владельца репозитория на этапе загрузки. Соседняя операция torch.load для загруженных весов является отдельным вопросом и ограничена в релизах PyTorch, где параметр weights_only по умолчанию установлен в true (true), что оставляет данный путь как единственный достижимый вектор атаки.
If you want to get best quality of vulnerability data, you may have to visit VulDB.