What’s Vulnerable › Vulnerabilities
CVE-2021-25641: Dubbo Zookeeper does not check serialization id
- Severity: critical (CVSS 9.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 21.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2021-06-01 · updated 2026-06-17
- Weakness: CWE-502
Description
Each Apache Dubbo server will set a serialization id to tell the clients which serialization protocol it is working on. But for Dubbo versions before 2.7.8 or 2.6.9, an attacker can choose which serialization id the Provider will use by tampering with the byte preamble flags, aka, not following the server's instruction. This means that if a weak deserializer such as the Kryo and FST are somehow in code scope (e.g. if Kryo is somehow a part of a dependency), a remote unauthenticated attacker can tell the Provider to use the weak deserializer, and then proceed to exploit it.
Affected products
- Apache Software Foundation Apache Dubbo: from 2.5.0 before 2.6.9; from 2.7.0 before 2.7.8 — fixed in 2.6.9, 2.7.8
How to fix
Upgrade to a fixed version: Apache Software Foundation Apache Dubbo 2.6.9, 2.7.8. Check the vendor advisory for mitigations.
References
- https://lists.apache.org/thread.html/r99ef7fa35585d3a68762de07e8d2b2bc48b8fa669a03e8d84b9673f3%40%3Cdev.dubbo.apache.org%3E
- https://lists.apache.org/thread.html/r99ef7fa35585d3a68762de07e8d2b2bc48b8fa669a03e8d84b9673f3%40%3Cdev.dubbo.apache.org%3E
Get alerted when CVE-2021-25641 or the next vulnerability affects your stack