CVE-2020-1948

CRITICAL LAB

Apache Dubbo < 2.7.7 - Remote Code Execution via Untrusted Data Deserialization

Title source: llm
STIX 2.1

Exploitation Summary

EIP tracks 4 public exploits for CVE-2020-1948. PoCs published by richardzhangcmplx, ctlyz123, txrw.

AI-analyzed exploit summary This repository contains a proof-of-concept exploit for CVE-2020-1948, targeting Apache Dubbo's Hessian deserialization vulnerability. It includes tools for generating JNDI injection payloads and a Python script to send malicious Hessian payloads to vulnerable endpoints.

Description

This vulnerability can affect all Dubbo users stay on version 2.7.6 or lower. An attacker can send RPC requests with unrecognized service name or method name along with some malicious parameter payloads. When the malicious parameter is deserialized, it will execute some malicious code. More details can be found below.

Exploits (4)

nomisec WORKING POC 18 stars
by richardzhangcmplx · poc
https://github.com/richardzhangcmplx/Dubbo-deserialization

This repository contains a proof-of-concept exploit for CVE-2020-1948, targeting Apache Dubbo's Hessian deserialization vulnerability. It includes tools for generating JNDI injection payloads and a Python script to send malicious Hessian payloads to vulnerable endpoints.

Classification
Working Poc 90%
Attack Type
Deserialization
Complexity
Moderate
Reliability
Reliable
Target: Apache Dubbo 2.7.5 and earlier
No auth needed
Prerequisites: Network access to the vulnerable Dubbo service · Java environment for JNDI exploitation tools
devstral-2 · analyzed Feb 16, 2026 Full analysis →
nomisec STUB 15 stars
by ctlyz123 · poc
https://github.com/ctlyz123/CVE-2020-1948

This repository appears to be a legitimate Apache Dubbo Spring Boot project with no exploit code. It contains configuration files, autoconfigure modules, and actuator endpoints, but no proof-of-concept exploit for CVE-2020-1948.

Classification
Stub 90%
Attack Type
Other
Complexity
Trivial
Reliability
Theoretical
Target: Apache Dubbo Spring Boot
No auth needed
devstral-2 · analyzed Feb 16, 2026 Full analysis →
nomisec WORKING POC 4 stars
by txrw · poc
https://github.com/txrw/Dubbo-CVE-2020-1948

This repository provides a functional test environment for CVE-2020-1948, a deserialization vulnerability in Apache Dubbo. It includes a modified Dubbo Spring Boot sample to demonstrate the vulnerability, with instructions for compilation, execution, and containerization.

Classification
Working Poc 90%
Attack Type
Deserialization
Complexity
Moderate
Reliability
Reliable
Target: Apache Dubbo (versions affected by CVE-2020-1948)
No auth needed
Prerequisites: Java environment · Maven for compilation · Docker for containerization (optional)
devstral-2 · analyzed Feb 16, 2026 Full analysis →
nomisec WORKING POC 3 stars
by M3g4Byt3 · poc
https://github.com/M3g4Byt3/cve-2020-1948-poc

This PoC exploits CVE-2020-1948, a deserialization vulnerability in Apache Dubbo, by sending a malicious payload to trigger an LDAP connection. It uses the Hessian2 decoder to craft a malicious object chain involving JdbcRowSetImpl and ToStringBean.

Classification
Working Poc 90%
Attack Type
Deserialization
Complexity
Moderate
Reliability
Reliable
Target: Apache Dubbo
No auth needed
Prerequisites: Network access to the target Dubbo service · Python environment with dubbo-py library
devstral-2 · analyzed Feb 16, 2026 Full analysis →

Scores

CVSS v3 9.8
EPSS 0.1395
EPSS Percentile 96.1%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Lab Environment

COMMUNITY
Community Lab
docker pull szgx/java:8u111_debian
docker pull dsolab/dubbo:cve-2020-1948
+1 more repos

Details

CWE
CWE-502
Status published
Products (3)
apache/dubbo 2.5.0 - 2.5.10
org.apache.dubbo/dubbo 0 - 2.7.7Maven
org.apache.dubbo/dubbo-common 0 - 2.7.7Maven
Published Jul 14, 2020
Tracked Since Feb 18, 2026