PyTorchGHSA-63cw-57p8-fm3p
PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files
Fix: upgrade to 2.10.0 or later
Summary
A vulnerability in PyTorch's weights_only unpickler allows an attacker to craft a malicious checkpoint file (.pth) that, when loaded with torch.load(..., weights_only=True), can corrupt memory and potentially lead to arbitrary code execution.
Vulnerability Details
The weights_only=True unpickler failed to properly validate pickle opcodes and storage metadata, allowing:
1. Heap memory corruption via SETITEM/SETITEMS opcodes applied to non-dictionary types
2. Storage size mismatch between declared element count and actual data in the archive
Impact
An attacker who can convince a user to load a malicious checkpoint file may achieve arbitrary code execution in the context of the victim's process.
Credit
Ji'an Zhou
Affected versions
| Package | Affected | Fixed in |
|---|---|---|
| torch PyPI | < 2.10.0 | 2.10.0 |
Details and references
- CVSS 3.1
- CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
- Severity from
- GitHub (reviewed advisory)
- Weakness
- CWE-502, CWE-94
- Also known as
- BIT-pytorch-2026-24747, CVE-2026-24747, PYSEC-2026-1856, PYSEC-2026-2286
- github.com/pytorch/pytorch/security/advisories/GHSA-63cw-57p8-fm3p
- nvd.nist.gov/vuln/detail/CVE-2026-24747
- github.com/pytorch/pytorch/issues/163105
- access.redhat.com/errata/RHSA-2026:24977
- access.redhat.com/security/cve/CVE-2026-24747
- bugzilla.redhat.com/show_bug.cgi?id=2433612
- github.com/advisories/GHSA-63cw-57p8-fm3p
- github.com/pypa/advisory-database/tree/main/vulns/pytorch/PYSEC-2026-1856.yaml
- github.com/pypa/advisory-database/tree/main/vulns/torch/PYSEC-2026-2286.yaml
- github.com/pytorch/pytorch
- github.com/pytorch/pytorch/163122/commit/954dc5183ee9205cbe79876ad05dd2d9ae752139
- github.com/pytorch/pytorch/releases/tag/v2.10.0
- pypi.org/project/pytorch
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-24747.json