Executive brief
DGL is a Python library for deep learning on graphs that uses PyTorch and other frameworks. The library contains two unsafe deserialization vulnerabilities that allow remote attackers to execute arbitrary code by crafting malicious pickle or torch-format files. An attacker can exploit this by tricking a user into loading a specially-crafted dataset file, leading to complete system compromise.
Technical details
The vulnerability exists in two code paths: dgl.data.utils.load_info() calls pickle.load() directly on untrusted files without restriction, and dgl.graphbolt.internal.utils._read_torch_data() calls torch.load() with weights_only=False hardcoded, bypassing torch's restricted unpickler. Both vulnerabilities are reachable through public APIs and allow unauthenticated remote code execution via crafted .pkl or .pt files. No patches or mitigations exist as of the advisory date.
Affected products
- DMLC DGL up to 2.1.0
Timeline
- 2026-08-29: disclosed: Issue #7932 opened on GitHub
- 2026-09-20: advisory: CVE-2026-94092 published