| 标题 | dmlc dgl 2.1.0 rce |
|---|
| 描述 | Two independent deserialization sinks execute attacker-controlled pickle payloads when a victim loads DGL data files:
load_info — a public utility (recommended in the DGLDataset docstring for reading dataset info.pkl) that calls raw pickle.load on the file.
Graphbolt torch-data path — _read_torch_data calls torch.load with the hardcoded literal weights_only=False, disabling the restricted unpickler that torch >= 2.6 enables by default. A repo-wide grep for weights_only=True, RestrictedUnpickler, safe_globals, allow_pickle=False returns zero matches across the entire dgl Python tree — no safe default exists anywhere.
Neither API exposes a safety parameter: load_info(path) takes only the path; read_data(path, fmt, in_memory=True)'s parameters select the format reader and caching, never the unpickler mode. No environment variable or configuration file affects either sink (DGLBACKEND selects the tensor backend only). |
|---|
| 来源 | ⚠️ https://github.com/dmlc/dgl/issues/7932 |
|---|
| 用户 | __lbz__ (UID 100868) |
|---|
| 提交 | 2026-08-29 05時08分 (23 日前) |
|---|
| 管理 | 2026-09-20 10時39分 (22 days later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 408022 [dmlc dgl 直到 2.1.0 utils.py load_info/_read_torch_data path 权限提升] |
|---|
| 积分 | 18 |
|---|