CVE-2025-1945 picklescan - Zip Flag Bit Exploit Crashes Picklescan But Not PyTorch
Attackers can bypass PickleScan detection by modifying ZIP flags, allowing malicious pickle files to execute arbitrary code when loaded by PyTorch.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2025-1945?
CVE-2025-1945 is a medium-severity unsafe deserialization vulnerability in mmaitre314 picklescan, published on 10 Mar 2025. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
picklescan before 0.0.23 fails to detect malicious pickle files inside PyTorch model archives when certain ZIP file flag bits are modified. By flipping specific bits in the ZIP file headers, an attacker can embed malicious pickle files that remain undetected by PickleScan while still being successfully loaded by PyTorch's torch.load(). This can lead to arbitrary code execution when loading a compromised model.
Weakness: CWE-345
Which versions are affected by CVE-2025-1945?
3 open source packages ship an affected version, including picklescan. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
picklescan PyPI | All versions | 0.0.23 |
picklescan PyPI | All versions | 0.0.23 |
picklescan PyPI | All versions | 0.0.23 |
Products include Mmaitre314 Picklescan.
How do I fix CVE-2025-1945?
Upgrade picklescan to 0.0.23 or later.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2025-1945 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-1945 exists.
Other vulnerabilities in mmaitre314 picklescan
- CVE-2025-10155 PickleScan Security Bypass Using Misleading File Extension
- CVE-2025-10156 PickleScan Security Bypass via Bad CRC in ZIP Archive
- CVE-2025-10157 PickleScan Bypasses Unsafe Globals Check Using Submodule Imports
- CVE-2025-71348 picklescan - Arbitrary Code Execution via torch.utils._config_module.load_config Bypass
- CVE-2025-71357 picklescan - Arbitrary Code Execution via Undetected idlelib.pyshell.ModifiedInterpreter.runcommand
Sources
Also known as GHSA-w8jq-xcqf-f792, PYSEC-2025-21.