GHSA-5mc7-m686-p6jg

    Dashboard / Vulnerabilities / GHSA-5mc7-m686-p6jg

    GHSA-5mc7-m686-p6jg

    Published: 18 Mar 2022Last Modified: 8 Nov 2023

    Summary: Deserialization of Untrusted Data in Apache Dubbo

    Details: Apache Dubbo prior to 2.6.9 and 2.7.10 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.

    Affected packages

    Package

    Name: org.apache.dubbo:dubbo

    Purl: pkg:maven/org.apache.dubbo/dubbo

    Affected ranges

    Type: ECOSYSTEM

    Events:

    Introduced- 2.5.0
    Fixed -2.7.10

    Affected versions

    2.7.0
    2.7.1
    2.7.2
    2.7.3
    2.7.4
    2.7.4.1
    2.7.5
    2.7.6
    2.7.7
    2.7.8
    2.7.9

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High
    GHSA-5mc7-m686-p6jg | CVE-DB