UNKNOWN PyPI
PyTorch: `torch.load` with `weights_only=True` leads to remote code execution
GHSA-53q9-r3pm-6pq6 · BIT-pytorch-2025-32434 · CVE-2025-32434 · PYSEC-2025-41
Published · Modified
Description
Description
I found a Remote Command Execution (RCE) vulnerability in PyTorch. When loading model using torch.load with weights_only=True, it can still achieve RCE.
Background knowledge
https://github.com/pytorch/pytorch/security
As you can see, the PyTorch official documentation considers using torch.load() with weights_only=True to be safe.
Since everyone knows that weights_only=False is unsafe, so they will use the weights_only=True to mitigate the seucirty issue.
But now, I just proved that even if you use weights_only=True, it can still achieve RCE.
Credit
This vulnerability was found by Ji'an Zhou.
References
- WEB https://github.com/pytorch/pytorch/security/advisories/GHSA-53q9-r3pm-6pq6
- ADVISORY https://nvd.nist.gov/vuln/detail/CVE-2025-32434
- WEB https://github.com/pytorch/pytorch/commit/8d4b8a920a2172523deb95bf20e8e52d50649c04
- WEB https://github.com/pypa/advisory-database/tree/main/vulns/torch/PYSEC-2025-41.yaml
- PACKAGE https://github.com/pytorch/pytorch
Ready to move
Start Securing
Free, no credit card | First findings in minutes