🔍 CVE-2026-31232

8.8
CVSS Score
HIGH
2026-05-12
2026-05-14 20:17
✅ 완료

🇰🇷 한글 설명

CosyVoice 프로젝트의 모델 로딩 과정에서 torch.load()를 weights_only=True 파라미터 없이 사용하여 불안전한 역직렬화(Pickle) 취약점 발생. 공격자가 악의적인 .pt 파일을 모델 디렉토리에 삽입하면 피해자가 로드할 때 임의의 Python 코드 실행 가능.

💡 쉬운 설명

CosyVoice가 모델 파일을 로드할 때 내용을 검증하지 않아 악의적인 코드가 숨어 있을 수 있습니다. 공격자가 나쁜 모델 파일을 제공하면 사용자의 컴퓨터에서 그 코드가 자동으로 실행됩니다.

🇺🇸 원문 (English)

The CosyVoice project thru commit 6e01309e01bc93bbeb83bdd996b1182a81aaf11e (2025-30-21) contains an insecure deserialization vulnerability (CWE-502) in its model loading process. When loading model files (.pt) from a user-specified directory (via the --model_dir argument), the code uses torch.load() without 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 maliciously crafted model directory containing .pt files with embedded pickle payloads. When a victim loads this directory using CosyVoice's web interface, the malicious payload is executed, leading to remote code execution on the victim's system.

📍 영향받는 시스템

CosyVoice commit 6e01309e01bc93bbeb83bdd996b1182a81aaf11e 이전 모든 버전

⚔️ 공격 벡터

--model_dir 인수로 악의적인 pickle 페이로드가 포함된 .pt 파일이 있는 디렉토리 제공

🛡️ 대응 방법

최신 버전으로 업데이트 또는 torch.load() 호출 시 weights_only=True 파라미터 추가

🔧 검증 코드

CosyVoice가 설치되어 있으면 버전 확인, 설치 안 되어 있으면 'not installed' 표시

Shell / Script
pip list | grep -i cosyvoice || echo 'not installed'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Python