CVE-2025-2000·Python vulnerability
A maliciously crafted QPY file can potential execute arbitrary-code embedded in the payload without privilege escalation when deserialising QPY formats < 13. A python process calling Qiskit 0.18.0 through 1.4.1's `qiskit.qpy.load()` function could potentially execute any arbitrary Python code embedded in the correct place in the binary file as part of specially constructed payload.
- Severity
- critical
- Software
- Python
- Fixed in
- 1.4.2
- Published
- 2025-03-14
Affected versions
From: 0.18.0
Until: 1.4.2
Fixed in: 1.4.2
How to fix this CVE
Update Qiskit to version 1.4.2 or later to remediate the arbitrary code execution vulnerability in QPY deserialization. Systems running Qiskit 0.18.0 through 1.4.1 should prioritize this update immediately, as untrusted QPY files can trigger code execution during the load operation. Ensure all Python environments and virtual machines using vulnerable Qiskit versions are patched without delay.
sudo dnf update python3-qiskitDefensia detects this vulnerability
How to check if you are affected
- Check installed Qiskit version: python3 -c "import qiskit; print(qiskit.__version__)"
- Identify Qiskit usage in your codebase: grep -r "qiskit.qpy.load" /path/to/app/
- Search application logs for qpy.load() calls with external file sources: grep -i "qpy.load" /var/log/application.log
- Verify patched version is installed: python3 -c "import qiskit; assert qiskit.__version__ >= '1.4.2', 'Vulnerable version detected'"
FAQ
What is CVE-2025-2000?
CVE-2025-2000 is a critical arbitrary code execution vulnerability in Qiskit's QPY file deserialization mechanism. Malformed QPY files with embedded Python code can execute arbitrary commands when loaded via the qiskit.qpy.load() function, bypassing normal privilege escalation requirements.
Is CVE-2025-2000 being actively exploited?
No, CVE-2025-2000 is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are available. However, the critical CVSS score (9.8) warrants immediate patching.
What versions of Qiskit are affected by CVE-2025-2000?
Qiskit versions 0.18.0 through 1.4.1 are vulnerable. Version 1.4.2 and later contain the fix. The vulnerability affects QPY file formats version 13 and earlier.
How do I check if my server is vulnerable to CVE-2025-2000?
Run: python3 -c "import qiskit; print(qiskit.__version__)" and verify the version is 1.4.2 or higher. If the output shows 0.18.0 through 1.4.1, your installation is vulnerable.
Does Defensia detect CVE-2025-2000?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Qiskit is installed on a monitored server, CVE-2025-2000 will appear in your dashboard with remediation steps.
Related Python CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2025-2000. Free for 1 server.
Get started free