CVE-2025-70560 json
Boltz contains an insecure deserialization vulnerability in its molecule loading functionality
published 2026-02-03 9 mo ago modified 2026-07-07 4 mo ago also GHSA-fjm6-8xp2-4fwc , PYSEC-2026-1224 , EUVD-2025-206702
- cvss
- 8.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 6%
- public exploits
- 0
- none known
Summary
Boltz 2.0.0 contains an insecure deserialization vulnerability in its molecule loading functionality. The application uses Python pickle to deserialize molecule data files without validation. An attacker with the ability to place a malicious pickle file in a directory processed by boltz can achieve arbitrary code execution when the file is loaded.
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 9 mo ago
Exploit prediction
0.17% chance of exploitation in the next 30 days, higher than 6% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 8.4 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | 3.1 | 8.4 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.4 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 8.4 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | boltz | <=2.0.0 |
no fix listed |
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
-
github.com
/jwohlwend/boltz/issues/600
web, issue-tracking
-
github.com
/jwohlwend/boltz/blob/cb04aeccdd480fd4db707f0bbafde538397fa2ac/src/boltz/data/mol.py#L80
web, product
-
github.com
/advisories/GHSA-fjm6-8xp2-4fwc
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2025-70560
advisory
-
github.com
/jwohlwend/boltz
package
-
pypi.org
/project/boltz
package
Sources
- CVE List CVE-2025-70560
- GitHub Advisory GHSA-fjm6-8xp2-4fwc
- NVD CVE-2025-70560
- OSV PYSEC-2026-1224
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.