torch.load when CosyVoice Web UI loads -model_dirMITRE service request: 1988723
Status: RESERVED (pending a qualifying public reference per CNA Rules §5.3).
CosyVoice thru commit 6e01309e01bc93bbeb83bdd996b1182a81aaf11e (2025-30-21) contains an insecure deserialization vulnerability (CWE-502) in its model loading component. The framework uses torch.load() to load model weight files (e.g., llm.pt, flow.pt, hift.pt) without enabling the security-restrictive weights_only=True parameter. This allows the deserialization of arbitrary Python objects via the pickle module. An attacker can exploit this by providing a malicious model directory containing specially crafted model files. When a victim starts the CosyVoice Web UI pointing to this directory, arbitrary code is executed on the victim’s system during the model loading process.
python webui.py --model_dir mirrors the gRPC issue for browser-based demos: malicious weight shards execute during CosyVoiceModel.load before the UI serves traffic.
6e01309e01bc93bbeb83bdd996b1182a81aaf11e.torch.load defaults (weights_only=False).High — overlaps operationally with CVE-2026-31232 / CVE-2026-31251 but tracks the Web UI entry specifically.