CVE-2025-62703 json
Fugue is Vulnerable to Remote Code Execution by Pickle Deserialization via FlaskRPCServer
published 2025-11-25 11 mo ago modified 2026-10-19 21 d ago also GHSA-xv5p-fjw5-vrj6 , PYSEC-2026-1399 , EUVD-2025-199646
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.8%
- EPSS 0.8% chance of exploitation in 30 days, percentile 56%
- public exploits
- 0
- none known
Summary
Fugue is a unified interface for distributed computing that lets users execute Python, Pandas, and SQL code on Spark, Dask, and Ray with minimal rewrites. In version 0.9.2 and prior, there is a remote code execution vulnerability by pickle deserialization via FlaskRPCServer. The Fugue framework implements an RPC server system for distributed computing operations. In the core functionality of the RPC server implementation, I found that the _decode() function in fugue/rpc/flask.py directly uses cloudpickle.loads() to deserialize data without any sanitization. This creates a remote code execution vulnerability when malicious pickle data is processed by the RPC server. The vulnerability exists in the RPC communication mechanism where the client can send arbitrary serialized Python objects that will be deserialized on the server side, allowing attackers to execute arbitrary code on the victim's machine. This issue has been patched via commit 6f25326.
Patch / fix
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 11 mo ago
Exploit prediction
0.78% chance of exploitation in the next 30 days, higher than 56% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/fugue-project/fugue/security/advisories/GHSA-xv5p-fjw5-vrj6 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 8.8 | CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | fugue | <=0.9.2 |
no fix listed |
Affected products
- fugue-project fugue
Classification
References
-
github.com
/fugue-project/fugue/commit/6f25326779fd1f528198098d6287c5a863176fc0
web, patch
-
github.com
/fugue-project/fugue/security/advisories/GHSA-xv5p-fjw5-vrj6
exploit, web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2025-62703
advisory
-
drive.google.com
/file/d/1y8bBBp7dnWoT_WHBtdB0Fts4NRUIfdWi/view?usp=sharing
web
-
github.com
/fugue-project/fugue
package
-
pypi.org
/project/fugue
package
-
github.com
/advisories/GHSA-xv5p-fjw5-vrj6
advisory
Sources
- CVE List CVE-2025-62703
- GitHub Advisory GHSA-xv5p-fjw5-vrj6
- NVD CVE-2025-62703
- OSV PYSEC-2026-1399
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.