CVE-2026-79784 in Vocos
Zusammenfassung
von VulDB • 25.08.2026
Vocos instantiiert eine Klasse, deren Name aus einer Konfigurationsdatei stammt, ohne einzuschränken, welche Klasse benannt werden darf. Die Funktion `instantiate_class` in `vocos/pretrained.py` übernimmt den Wert `class_path` aus der Konfiguration, teilt ihn in ein Modul und ein Attribut auf, importiert das Modul mit `__import__`, löst das Attribut mit `getattr` auf und ruft das Ergebnis als `args_class(*args, **kwargs)` auf, wobei `kwargs` die eigene Mapping-Struktur von `init_args` der Konfiguration ist. Keine Allowlist beschränkt den punktierten Pfad, sodass eine Konfiguration jede importierbare aufrufbare Funktion benennen und die Argumente angeben kann, mit denen sie aufgerufen wird. `Vocos.from_hparams` erreicht dies für jeden Eintrag von `feature_extractor`, `backbone` und `head`, und `Vocos.from_pretrained` erreicht es über eine Remote-Datei: Es lädt `config.yaml` aus einem vom Aufrufer benannten Hugging Face Repository herunter und übergibt es direkt an `from_hparams`. Das Laden eines Modells aus einem Repository, das der Benutzer nicht kontrolliert, führt daher während des Ladevorgangs die Ausführung von Code nach Wahl des Repository-Betreibers aus. Der angrenzende Aufruf von `torch.load` für die heruntergeladenen Gewichte ist ein separates Thema und wird auf PyTorch-Versionen eingeschränkt, bei denen standardmäßig `weights_only` auf true gesetzt ist, wodurch dieser Pfad als der erreichbare verbleibt.
If you want to get best quality of vulnerability data, you may have to visit VulDB.