CVE-2025-1945 json
picklescan - Zip Flag Bit Exploit Crashes Picklescan But Not PyTorch
published 2025-03-10 20 mo ago modified 2026-06-17 4 mo ago also GHSA-w8jq-xcqf-f792 , PYSEC-2025-21 , EUVD-2025-7445
- cvss
- 9.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 46%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 20 mo ago
Exploit prediction
0.55% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/mmaitre314/picklescan/security/advisories/GHSA-w8jq-xcqf-f792 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 5.3 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:L/SC:N/SI:L/SA:L |
| CNA | 4.0 | 5.3 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:L/SC:N/SI:L/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | picklescan | <0.0.23 |
0.0.23 |
Affected products
- mmaitre314 picklescan
Classification
- Weakness
-
- CWE-345 Insufficient Verification of Data Authenticity
References
-
github.com
/mmaitre314/picklescan/commit/e58e45e0d9e091159c1554f9b04828bbb40b9781
patch, web
-
github.com
/mmaitre314/picklescan/security/advisories/GHSA-w8jq-xcqf-f792
vendor-advisory, web, exploit, evidence
-
sonatype.com
/security-advisories/cve-2025-1945
third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2025-1945
advisory
-
github.com
/mmaitre314/picklescan
package
-
github.com
/pypa/advisory-database/tree/main/vulns/picklescan/PYSEC-2025-21.yaml
web
-
sites.google.com
/sonatype.com/vulnerabilities/cve-2025-1945
web
Sources
- CVE List CVE-2025-1945
- GitHub Advisory GHSA-w8jq-xcqf-f792
- NVD CVE-2025-1945
- OSV PYSEC-2025-21
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.