GitHub Advisoryadvisory · PyPI

GHSA-75m9-98v2-hjpm PyTorch Lightning load_from_checkpoint has an insecure checkpoint deserialization

HIGH Published 2026-05-12 Modified 2026-05-18 Official page ↗
Aliases
CVE-2026-31221
Ecosystem
PyPI
Packages
pytorch-lightning
Severity
High
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weaknesses
CWE-502
Reviewed
2026-05-18

Affected packages

• PyPI pytorch-lightning: <= 2.6.0 (no fix yet)

Description

PyTorch-Lightning versions 2.6.0 and earlier contain an insecure deserialization vulnerability (CWE-502) in the checkpoint loading mechanism. The LightningModule.load_from_checkpoint() method, which is commonly used to load saved model states, internally calls torch.load() without setting the security-restrictive weights_only=True parameter. This default behavior allows the deserialization of arbitrary Python objects via the Pickle module. A remote attacker can exploit this by providing a maliciously crafted checkpoint file, leading to arbitrary code execution on the victim's system when the file is loaded.

Related

Alias · CVE (1)

  • CVE-2026-31221 PyTorch-Lightning versions 2.6.0 and earlier contain an insecure deserialization vulnerability (CWE-502) in the checkpoint loading… vulnerability

Weakness · CWE (1)

  • CWE-502 Deserialization of Untrusted Data weakness

References