CVE-2026-31251

Insecure Deserialization in CosyVoice gRPC Server Enables Remote Code Execution

Published May 11, 2026 CVSS 3.1 · 7.3 High EPSS < 1% KEV · Not listed
Description
CosyVoice thru commit 6e01309e01bc93bbeb83bdd996b1182a81aaf11e (2025-30-21) contains an insecure deserialization vulnerability (CWE-502) in its gRPC server component. When the server starts, it loads the speech synthesis model from a user-specified directory using torch.load() without enabling the weights_only=True security parameter. This allows the deserialization of arbitrary Python objects via the pickle module. An attacker can exploit this by providing malicious model files within a directory. When a victim starts the gRPC server pointing to this directory, arbitrary code is executed on the victim's system during server initialization.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Title Insecure Deserialization in CosyVoice gRPC Server Enables Remote Code Execution
Type Values Removed Values Added
Title Insecure Deserialization Enables Remote Code Execution in CosyVoice gRPC Server
Weaknesses CWE-502
Type Values Removed Values Added
Weaknesses CWE-20
CWE-915
CWE-94
Metrics cvssV3_1

{'score': 7.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Funaudiollm
Funaudiollm cosyvoice
Vendors & Products Funaudiollm
Funaudiollm cosyvoice
Type Values Removed Values Added
Title Insecure Deserialization Enables Remote Code Execution in CosyVoice gRPC Server
Weaknesses CWE-502
Type Values Removed Values Added
Description CosyVoice thru commit 6e01309e01bc93bbeb83bdd996b1182a81aaf11e (2025-30-21) contains an insecure deserialization vulnerability (CWE-502) in its gRPC server component. When the server starts, it loads the speech synthesis model from a user-specified directory using torch.load() without enabling the weights_only=True security parameter. This allows the deserialization of arbitrary Python objects via the pickle module. An attacker can exploit this by providing malicious model files within a directory. When a victim starts the gRPC server pointing to this directory, arbitrary code is executed on the victim's system during server initialization.
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
May 12, 2026, 7:13 PM
Reserved
Mar 9, 2026, 12:00 AM
Status
Deferred
Published
May 11, 2026, 5:16 PM
Modified
Jun 17, 2026, 10:33 AM