
Entorno de prueba de vulnerabilidad Apache Dubbo CVE-2020-1948, probado personalmente y funciona.
Cuando esta vulnerabilidad apareció por primera vez, para verificar su peligro, buscamos en Internet muchos ejemplos recopilados por otras personas y descubrimos que ninguno podía verificar la vulnerabilidad correctamente. Por eso creamos uno nosotros mismos y lo dejamos aquí como referencia para todos. ¡Los comentarios son bienvenidos!
Este entorno está basado en el entorno de ejemplo oficial de Apache Dubbo y corrige varios errores de compilación presentes en el programa de ejemplo oficial. Por ejemplo:
cd src
mvn package
Si la compilación es exitosa, se generará el archivo dubbo.jar en el directorio src/target.
java -jar target/dubbo.jar
Una vez ejecutado correctamente, escuchará en el puerto 12345 y se puede usar el comando para conectarse y probar.
telnettelnet x.x.x.x 12345
# dubbo> ls -l
# PROVIDER:
# org.apache.dubbo.spring.boot.sample.consumer.DemoService:1.0.0 -> published: N
# 构建
docker build -t dsolab/dubbo:cve-2020-1948 .
# 运行
docker run -p 12345:12345 dsolab/dubbo:cve-2020-1948 -d
或
docker-compose up -d
# 访问
telnet x.x.x.x 12345
Si solo quieres usar el entorno rápidamente (sin molestarte en compilarlo), puedes iniciar el entorno de imagen que proporcionamos con los siguientes comandos:
# 需要安装 Docker 和 docker-compose
docker-compose up -d
Consulta el método de verificación de la vulnerabilidad de deserialización de Apache Dubbo CVE-2020-1948