Skip to main content

Apache Fory EUVDEUVD-2026-46171

| CVE-2026-64608 CRITICAL
Deserialization of Untrusted Data (CWE-502)
2026-07-21 security@apache.org GHSA-wh2x-66qr-23v8
9.8
CVSS 3.1 · Vendor: apache
Share

Severity by source

Vendor (apache) PRIMARY
9.8 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
8.1 HIGH

Network-reachable unauthenticated deserialization (AV:N/PR:N), but AC:H because it needs compatible-mode config plus a crafted mismatched-schema payload to reliably corrupt the heap; full memory-safety impact gives C/I/A:H.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Jul 21, 2026 - 14:23 vuln.today
CVSS changed
Jul 21, 2026 - 14:22 NVD
9.8 (CRITICAL)
Patch available
Jul 21, 2026 - 11:02 EUVD
CVE Published
Jul 21, 2026 - 10:16 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 21, 2026 - 10:16 cve.org
CRITICAL 9.8

DescriptionCVE.org

Heap type confusion and out-of-bounds read/write in the Apache Fory C++ implementation. When deserializing data in compatible mode, the field-skip paths do not correctly validate the declared field types against the actual data, so input with an inconsistent schema can cause type confusion and out-of-bounds memory access. Only the C++ implementation is affected; other language implementations of Apache Fory are not.

This issue affects Apache Fory C++: from 0.14.0 before 1.4.0.

Users are recommended to upgrade to version 1.4.0, which fixes the issue.

AnalysisAI

Memory corruption in Apache Fory's C++ serialization library (versions 0.14.0 up to but not including 1.4.0) lets remote attackers trigger heap type confusion and out-of-bounds read/write by supplying data with an inconsistent schema when deserialization runs in compatible mode. Because the field-skip code paths never validate declared field types against the actual bytes, a crafted payload can corrupt heap memory, creating a path toward remote code execution or denial of service. There is no public exploit identified at time of analysis and it is not on CISA KEV, but the CWE-502 root cause and 9.8 CVSS score make it a high-priority patch for any service that deserializes untrusted input with the C++ implementation.

Technical ContextAI

Apache Fory (formerly Fury) is a high-performance multi-language serialization framework used to encode and decode object graphs for RPC, caching, and big-data pipelines; only its C++ implementation is affected here, while Java, Python, Go and other bindings are not. The flaw sits in 'compatible mode,' the schema-evolution mode where the reader may encounter fields it does not recognize and must skip them. The field-skip logic trusts the type declared in the incoming stream rather than reconciling it against the expected/actual data, so a mismatched type tag causes the reader to interpret bytes as the wrong type (heap type confusion) and to index outside allocated buffers (out-of-bounds read/write). This maps to CWE-502 (Deserialization of Untrusted Data): the deserializer reconstructs state from attacker-controlled input without sufficient validation, and in an unmanaged C++ context that manifests as direct memory-safety violations rather than logic-level object injection.

RemediationAI

Vendor-released patch: 1.4.0 - upgrade the Apache Fory C++ library to 1.4.0 or later, which corrects the field-skip type validation; this is the primary and recommended fix per the Apache advisory (https://lists.apache.org/thread/wl05slf57zzoq1s4pg4tk6nx6mjyjr4b). If you cannot upgrade immediately, the most effective compensating control is to avoid deserializing untrusted or externally-sourced data with the affected C++ builds, and specifically to disable or avoid compatible mode where the schema-evolution path is not strictly required, since compatible mode is the code path that reaches the vulnerable field-skip logic (trade-off: you lose cross-version schema flexibility and may break clients that rely on evolving schemas). Additionally restrict which network sources can submit serialized payloads to affected services (network ACLs / authentication in front of the deserialization endpoint), accepting that this only narrows the attack surface rather than closing the flaw. Confirm the vuldb record (https://vuldb.com/vuln/380833) and vendor thread for any updated guidance.

Share

EUVD-2026-46171 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy