Dubbo Zookeeper does not check serialization id (Apache Software Foundation Apache Dubbo)

CVE-2021-25641
CRITICAL 9.8

At a glance

Source
NVD
EPSS
EPSS 21.22 % · percentile 98 ()
State
PUBLISHED
Published
Updated
Assigner
apache
NVD status
Modified

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.

Weaknesses (CWE)

  • CWE-502 — Deserialization of Untrusted Data

References

Scores

VersionScoreVectorScored by
CVSS 3.1CRITICAL 9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)
CVSS 2.0HIGH 7.5AV:N/AC:L/Au:N/C:P/I:P/A:PNVD · nvd@nist.gov (Primary)

Advisories

European references

Affected configurations (NVD CPE)

Affected products

ProductVersions
Apache Software Foundation · Apache Dubboaffected Apache Dubbo 2.7.x < 2.7.8 ; affected Apache Dubbo 2.6.x < 2.6.9

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD