WaratekVRT Sign in

CVE-2021-30179 Apache Dubbo

Affected softwareApache Dubbo
Severity9.8 Critical CVSS 3.1 2 scores
Fixed in2.7.10
WeaknessDeserialization of untrusted data (CWE-502)
Published1 Jun 2021
Updated17 Jun 2026

Description

Apache Dubbo prior to 2.6.9 and 2.7.9 by default supports generic calls to arbitrary methods exposed by provider interfaces. These invocations are handled by the GenericFilter which will find the service and method specified in the first arguments of the invocation and use the Java Reflection API to make the final call. The signature for the $invoke or $invokeAsync methods is Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/Object; where the first argument is the name of the method to invoke, the second one is an array with the parameter types for the method being invoked and the third one is an array with the actual call arguments. In addition, the caller also needs to set an RPC attachment specifying that the call is a generic call and how to decode the arguments. The possible values are: - true - raw.return - nativejava - bean - protobuf-json An attacker can control this RPC attachment and set it to nativejava to force the java deserialization of the byte array located in the third argument.

Exploitation status

No public exploit

No exploit has been reported in the sources we check. Published 5 years ago.

  • CISA KEV not listed
  • VulnCheck KEV not listed
  • CISA Vulnrichment no assessment published
  • Indexed PoC none indexed
  • EPSS 4.1% chance in 30 days

Waratek protection

Protected by Waratek

Waratek has a rule that blocks attacks on this vulnerability.

Decided by A vulnerability class already blocked by an ARMR security rule
Finding Protected by Waratek's ARMR deserialization security rule, which blocks this class of attack at the JVM level without a rule written for this CVE specifically. The CVE's weakness is CWE-502: Deserialization of Untrusted Data.

How to mitigate CVE-2021-30179

Upgrade Apache Dubbo to 2.7.10 or later. Until you can, Waratek RASP blocks exploitation with its deserialization and process rules. It runs inside the Java application, with no code changes.

Waratek RASP Runtime protection for Java applications

CVSS

9.8 CRITICAL v3.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H 2 metrics

We show the highest score from the newest CVSS version. Scores from different versions can't be compared, and the first score listed is sometimes a 0.0 placeholder.

VersionScoreBandVectorAssignerType
CVSS 3.1 9.8 CRITICAL CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H NVD Primary published
CVSS 2.0 7.5 none AV:N/AC:L/Au:N/C:P/I:P/A:P NVD Primary

Affected software and releases

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
org.apache.dubbo:dubbo 2.5.0 2.7.10 unbounded
com.alibaba:dubbo 2.5.0 2.6.9 unbounded

Products and versions

3 products, 5 version entries
SourceVendorProductSchemeAffected versions
nvd apache dubbo generic ≥ 2.5.0 and ≤ 2.5.10 · ≥ 2.6.0 and < 2.6.9 · ≥ 2.7.0 and < 2.7.10
osv com.alibaba dubbo generic ≥ 2.5.0 and < 2.6.9
osv org.apache.dubbo dubbo generic ≥ 2.5.0 and < 2.7.10

References

URLTags
https://lists.apache.org/thread.html/rccbcbdd6593e42ea3a1e8fedd12807cb111375c9c40edb005ef36f67%40%3Cdev.dubbo.apache.org%3E WEB
https://lists.apache.org/thread.html/rccbcbdd6593e42ea3a1e8fedd12807cb111375c9c40edb005ef36f67@%3Cdev.dubbo.apache.org%3E WEB

Timeline

Published2021-06-01By the CVE Program.
NVD record modified2026-06-17NVD's own last-modified date for this record.