PYSEC-2026-490
Vulnerability from pysec - Published: 2026-06-29 11:50 - Updated: 2026-07-01 20:23Deserialization of untrusted data in python in pyfory versions 0.12.0 through 0.12.2, or the legacy pyfury versions from 0.1.0 through 0.10.3: allows arbitrary code execution. An application is vulnerable if it reads pyfory serialized data from untrusted sources. An attacker can craft a data stream that selects pickle-fallback serializer during deserialization, leading to the execution of pickle.loads, which is vulnerable to remote code execution.
Users are recommended to upgrade to pyfory version 0.12.3 or later, which has removed pickle fallback serializer and thus fixes this issue.
| Name | purl | pyfory | pkg:pypi/pyfory |
|---|
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "pyfory",
"purl": "pkg:pypi/pyfory"
},
"ranges": [
{
"events": [
{
"introduced": "0.12.0"
},
{
"fixed": "0.12.3"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.12.0",
"0.12.1",
"0.12.2"
]
}
],
"aliases": [
"CVE-2025-61622",
"GHSA-538v-3wq9-4h3r"
],
"details": "Deserialization of untrusted data in\u00a0python in pyfory\u00a0versions 0.12.0 through 0.12.2, or the\u00a0legacy\u00a0pyfury versions from\u00a00.1.0 through 0.10.3: allows arbitrary code execution. An application is vulnerable if it reads pyfory serialized data from untrusted sources.\u00a0An attacker can craft a data stream that selects pickle-fallback serializer during deserialization, leading to the execution of `pickle.loads`, which is\u00a0vulnerable to\u00a0remote code execution.\n\nUsers are recommended to upgrade to pyfory version 0.12.3 or later, which has removed pickle fallback serializer and thus fixes this issue.",
"id": "PYSEC-2026-490",
"modified": "2026-07-01T20:23:02.648327Z",
"published": "2026-06-29T11:50:36.968662Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-61622"
},
{
"type": "WEB",
"url": "https://github.com/apache/fory/pull/2629"
},
{
"type": "WEB",
"url": "https://github.com/apache/fory/commit/379b948ecae5c3b849e5bdb3997978c9a163e40b"
},
{
"type": "PACKAGE",
"url": "https://github.com/apache/fory"
},
{
"type": "WEB",
"url": "https://github.com/apache/fory/releases/tag/v0.12.3"
},
{
"type": "WEB",
"url": "https://lists.apache.org/thread/vfn9hp9qt06db5yo1gmj3l114o3o2csd"
},
{
"type": "WEB",
"url": "http://www.openwall.com/lists/oss-security/2025/09/29/3"
},
{
"type": "PACKAGE",
"url": "https://pypi.org/project/pyfory"
},
{
"type": "ADVISORY",
"url": "https://github.com/advisories/GHSA-538v-3wq9-4h3r"
}
],
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "Apache Pyfory python is vulnerable to deserialization of untrusted data"
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.